【问题标题】:bootstrap.widgets.tbgridview add classname same as valuebootstrap.widgets.tbgridview 添加与值相同的类名
【发布时间】:2015-07-20 06:29:44
【问题描述】:

我想添加类名,这样类名将与行值数据相同

     $this->widget('bootstrap.widgets.TbGridView',array(
        'id'=>'testcaseResult-grid',
        'dataProvider'=>$model->search(),
            'filter'=>$model,
            'rowCssClassExpression'=>'"items[]_{$data->result_id}"',

        'columns'=>array(
          ....
            array(
                'name'=>'result_text',
                'headerHtmlOptions'=>array('style'=>'width:300px;text-align:center;'),
                'htmlOptions'=>array('class'=>'result_text'),
            ),
            array(
                'name'=>'result_severnity',
                'value'=> '$data->getResultSevernity()',
                'filter'=>$resultSevernityList,
                'htmlOptions'=>array('class'=>$data->getResultSevernity()),
                'headerHtmlOptions'=>array('style'=>'width:300px;text-align:center;'),
....
  1. 在第一个字段中,“result_text”是表中的字段名称。哪个 给出它的值,我希望类名具有相同的值。但不是 “结果文本”。
  2. 我有 result_severnity 有不同的数值。我 已在模型中创建函数以获取特定的字符串值 为了它。我想要相同的类名。

'htmlOptions'=>array('class'=>$data->getResultSevernity()),

我的问题是 No.2 具有与行数据中显示的类名相同的值,这是行不通的。

提前感谢您的解决方案。

【问题讨论】:

    标签: yii


    【解决方案1】:

    终于从我的大师那里得到答案。 与其给 self 元素添加类名,不如添加一个带有类名的 span 标签是一个很好的技巧。

    • 用span标签设置返回值
    • 添加类型 => '原始'
    • 为添加span标签传递参数

    'value'=> '$data->getResultSevernity('HTML')',

    ........     
    array(
                'name'=>'result_severnity',
                'type' => 'raw',
                'value'=> '$data->getResultSevernity()',
                'filter'=>$resultSevernityList,
                'headerHtmlOptions'=>array('style'=>'width:300px;text-align:center;'),
    ....
    
    model:
        public function getResultSevernity($type="")
            {
                $resultSevernity = $this->result_severnity;
                switch($resultSevernity)
                {
                    case '0':
                        $returnText = t("common","severnity_none");
                        break;
                    case '10':
                        $returnText = t("common","severnity_minor");
                        break;
                        ......
                    }
                if($type=="HTML") {
                    $class = "severnity_".$resultSevernity;
                    $returnText = cHtmlTag($returnText, 'span', array('class'=>$class));
                }
                return $returnText;
            }
    

    【讨论】:

      猜你喜欢
      • 2020-06-15
      • 1970-01-01
      • 2021-11-10
      • 2016-08-20
      • 1970-01-01
      • 1970-01-01
      • 2016-09-10
      • 2022-01-15
      • 1970-01-01
      相关资源
      最近更新 更多