如何使用条件更新ZFDataGrid中的列



我正在使用$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;
    }
    }

相关内容

  • 没有找到相关文章

最新更新