Yii 根据CGridView中的列值更改行颜色

Yii 根据CGridView中的列值更改行颜色,yii,Yii,在Yii中,CGridView在行中有自己的背景色。但我要做的是根据其中一列的值高亮显示特定的行 例如,我有三列,id,name,status。现在,如果status的值为Inactive或0,我应该用一些颜色高亮显示该行 我简单地阅读了课堂参考资料,并搜索了这个网站。但没有找到相关的解决方案。如果你能举出一个例子或向正确的解决方案迈进一步,我将不胜感激 谢谢, Ujjwal使用rowCssClass和rowCssClassExpression实现您的功能。我没有测试这段代码,但是测试了您可以用

在Yii中,CGridView在行中有自己的背景色。但我要做的是根据其中一列的值高亮显示特定的行

例如,我有三列,id,name,status。现在,如果status的值为Inactive或0,我应该用一些颜色高亮显示该行

我简单地阅读了课堂参考资料,并搜索了这个网站。但没有找到相关的解决方案。如果你能举出一个例子或向正确的解决方案迈进一步,我将不胜感激

谢谢,
Ujjwal

使用rowCssClass和rowCssClassExpression实现您的功能。我没有测试这段代码,但是测试了您可以用来获得解决方案的技巧

$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider,
    'rowCssClass'=>array('odd','even'),
    'rowCssClassExpression'=>($data->status==0)?even:odd,
    'columns'=>array(
    ),
));
CGridView是获取所需内容的方法

$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider,
    'rowCssClassExpression'=>'($data->myFlag==0)?"normal":"especial"',
    'columns'=>array(
    ...
    ),
));

您还可以调用自定义php函数,并将$data变量传递给它。该函数应返回给定行的类名:)

“rowCssClass”和“rowCssClassExpression”是:(而且,当我尝试使用不带引号的RowCssLassexpression值时,它不起作用。条件总是错误的。因此,sucotronic是正确的!我说过我没有测试这段代码,但技巧会起作用。@OnkarJanwa我在处创建了_,这是时间戳,如果($data-我在谷歌搜索时诅咒了yii/zii。很抱歉出现了“正确的”评论,但我特别感谢这个简单的修复方法。@sucotronic我已经在时间戳处创建了
$data->,我想突出显示行
如果($data-@ersks你可以使用:
'rowCssClassExpression'=>)($data->在==date('Y-m-d')?“突出显示”:“”