yii – 总是在CGridView上显示寻呼机?
发布时间:2020-12-13 22:32:23 所属栏目:PHP教程 来源:网络整理
导读:我已经构建了一个CGridView菜单,我想始终显示寻呼机 (即使它显示所有数据并且不需要导航) 这是我目前的代码: $this-widget('zii.widgets.grid.CGridView',array('dataProvider'=$search,'columns' = $columns,'itemsCssClass' = 'list_table','template' =
我已经构建了一个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>结构体.由于您没有为空白视图提供任何导航,因此如果在多个位置使用该数据,则无需担心该数据.这可能看起来像: else { echo '<div class="'.$this->pagerCssClass.'">'; ## YOUR CUSTOM "EMPTY PAGER" HTML HERE ## echo '</div>'; } 您可能还需要定义一些额外的css类.在仅显示部分分页的页面上(例如,第一页和最后一页),您可以使用CSS重新定义“.hidden”类. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |