gpt4 book ai didi

yii - 总是在 CGridView 上显示 Pager?

转载 作者:行者123 更新时间:2023-12-04 18:49:06 26 4
gpt4 key购买 nike

我已经建立了一个 CGridView 菜单,我想总是显示寻呼机
(即使它显示所有数据并且不需要导航)
这是我目前的代码:

$this->widget('zii.widgets.grid.CGridView',
array('dataProvider'=>$search,
'columns' => $columns,
'itemsCssClass' => 'list_table',
'template' => '{pager}{summary}{items}',
'pager' => array(
'cssFile'=>false,
'class'=>'CLinkPager',
'firstPageLabel' => '<<',
'prevPageLabel' => '<',
'nextPageLabel' => '>',
'lastPageLabel' => '>>',
'header' => '',
'footer' => $footer_btns,
),
'pagerCssClass' => 'pagination',
));

最佳答案

您可以通过覆盖 renderPager() 方法来做到这一点——但是,似乎分页器被放在了几个文件中,所以只覆盖一个类的一种方法是:

覆盖 zii.widgets.grid.CGridView 以添加您的自定义 renderPager() 方法,例如:

Yii::import('zii.widgets.grid.CGridView');
class MyGrid extends CGridView {
public function renderPager() { ... }
}

默认的 renderPager() 函数是 here .

您要做的是查找测试寻呼机内容的行:
if($pager['pages']->getPageCount()>1) {

并更改“else”语句以放入默认的“空”寻呼机内容,这可以使用相同的 <ul>结构体。由于您没有为空白 View 提供任何导航,因此如果在多个地方使用该数据,则无需担心该数据。这可能看起来像:
else {
echo '<div class="'.$this->pagerCssClass.'">';
## YOUR CUSTOM "EMPTY PAGER" HTML HERE ##
echo '</div>';
}

您可能还需要定义几个额外的 css 类。在仅显示部分分页的页面上(例如,第一页和最后一页),您可以使用 CSS 重新定义“.hidden”类。

关于yii - 总是在 CGridView 上显示 Pager?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7852111/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com