我正在使用$grid->updateColumn
命令更新网格表中的列(NAME)。但我需要根据一个条件更新该列。
这是我现在使用的命令,用于将"NAME"列转换为超链接。
$grid->updateColumn
('Name',array("decorator"=>"<a href='myproject/mycontroller/reportplot?id={{id}}&page=$page target='_parent' style='text-decoration:none; '>{{Name}}</a>"));
还有另一列"AGE"。我需要将所有名称转换为超链接,仅当"年龄"为20时。其他名称将不是超链接。
是否可以使用条件或有任何命令以某种方式执行??
请提出建议。提前谢谢。
您可以使用回调函数来实现这一点。将参数传递给函数,进行所需的计算,并将其传递回网格
$grid->updateColumn('Name', array('callback' => (array('function' => array($this, 'calculateAge'), 'params' => array('{{age}}','{{name}}')))));
function calculateAge($age,$name){
if($age>20){
$name = '<a href="your_link">{{$name}}</a>';
return $name;
}
}