【问题标题】:Yii CGridView customizing column head sort icons and row linksYii CGridView 自定义列头排序图标和行链接
【发布时间】:2014-01-27 21:53:29
【问题描述】:

我正在处理 Yii 中的 CGridView 小部件。我已经自定义了大部分内容,但似乎无法自定义单击列标题以对数据进行排序时出现的图标。 (根据排序顺序指向向上或向下的小箭头)此外,添加“列”选项后,图标完全消失了。我认为的部分代码如下:

<?php
$this->widget('zii.widgets.grid.CGridView', array(
'dataProvider'=>$dataProvider,
'pager' => array('cssFile' => '/css/myCss.css'),
'cssFile' => '/css/myCss.css',
'summaryText' => 'Showing {start} - {end} of {count} data rows.',
'htmlOptions' => array('id' => 'grid'),
'columns' => array(
    array(
        'name' => 'name',
        'value' => '$data->name',
    ),
    array(
        'name' => 'description',
        'value' => '$data->description',
    ),
    array(
        'name' => 'date',
        'value' => '$data->date',
    ),
),
));
?>

Yii 的文档对此一无所知,而且似乎没有任何人(我能找到)也有这个问题。

->另外,一个相关的问题: 我如何使每一行成为锚链接?我需要每一行都成为一个链接,以查看有关单击行的详细信息。我知道如果被告知 cgridview 会在行尾提供查看、编辑和删除链接,但是是否可以让整行成为单个锚链接?我知道如何在 html 中手动执行此操作,但不知道如何在 cgridview 中执行此操作。

【问题讨论】:

标签: php yii


【解决方案1】:

如果要更改表格标题中的图标,则需要覆盖类的样式(.grid-view table.items th a.desc 和 .grid-view table.items th a.asc)。您还可以通过指定选项来禁用表格的视觉样式:'cssFile'=&gt;false 并为网格设置自定义样式。 为了制作整个字符串锚链接,您可能需要使用必要的链接 url 插入表格的每个单元格。为此,请添加以下对字符串数组的描述:

'columns'=>array(
    ...
    array(         
       'name'=>'name',
       'value'=>'CHtml::link($data->name, "#myAnchor")',
       'type'=>'html'
    ),
    ...
)

【讨论】:

    【解决方案2】:

    我不确定你正在使用哪个版本的 Yii,但让我们试试这段代码

    <?php
    
    'columns' => array(
    array(
        ...
        'type' => 'html',
        'value'=>'CHtml::tag("a",array("class"=>"your-icon-class", "href"=>"#"))',
    ),
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-22
      • 2011-02-23
      相关资源
      最近更新 更多