在Yii中,CGridView有它的行中的自己的背景颜色。 但我想做的是突出基于列的一个值特定行。
举例来说,我有三个列,ID,名称,状态。 现在,如果状态的值是无效或0,我要突出一些颜色的行。
我简要地阅读类参考和搜索这个网站也是如此。 但无法找到相关的解决方案。 如果一些示例或朝向正确的解决方案的一些方向,即,将不胜感激。
谢谢,Ujjwal
在Yii中,CGridView有它的行中的自己的背景颜色。 但我想做的是突出基于列的一个值特定行。
举例来说,我有三个列,ID,名称,状态。 现在,如果状态的值是无效或0,我要突出一些颜色的行。
我简要地阅读类参考和搜索这个网站也是如此。 但无法找到相关的解决方案。 如果一些示例或朝向正确的解决方案的一些方向,即,将不胜感激。
谢谢,Ujjwal
CGridView “rowCssClassExpression”是为了得到你想要的方式。
$this->widget('zii.widgets.grid.CGridView', array(
'dataProvider'=>$dataProvider,
'rowCssClassExpression'=>'($data->myFlag==0)?"normal":"especial"',
'columns'=>array(
...
),
));
您也可以调用自定义的PHP函数,和$数据变量传递给它。 该函数应该给定的行返回类的名字:)
使用rowCssClass和rowCssClassExpression你的功能。 我没有测试此代码但诀窍,你可以用它来获得您的解决方案。
$this->widget('zii.widgets.grid.CGridView', array(
'dataProvider'=>$dataProvider,
'rowCssClass'=>array('odd','even'),
'rowCssClassExpression'=>($data->status==0)?even:odd,
'columns'=>array(
),
));