Yii视图操作之自定义分页实现方法


Posted in PHP onJuly 14, 2016

本文实例讲述了Yii视图操作之自定义分页实现方法。分享给大家供大家参考,具体如下:

1. 视图文件调用cgridview,clistview时候调用自定义的分页方法

<?php $this->widget('zii.widgets.grid.CGridView', array(
 'id'=>'news-grid',
 'dataProvider'=>$model->search(),
 'filter'=>$model,
 'template'=>'{items}{summary}{pager}',
  'selectableRows'=>2,
  'pager'=>'ZPager',
  'summaryText'=>'页数:{pages}/{page}页',
  'columns'=>array(
  array(
   'class'=>'CCheckBoxColumn',
   'footer'=>'<button onclink="deleteAll()">button</button>
      <button onclink="refashAll()">button</button>',
   'footerHtmlOptions'=>array('colspan'=>5),
   'selectableRows'=>2,
  ),
  'id',
  array('name'=>'title',
    'htmlOptions'=>array('width'=>'20%'),
    'value'=>'mb_substr($data->title,0,10,"utf-8")',
   ),
  array('name'=>'content',
    'htmlOptions'=>array('width'=>'20%'),
    'value'=>'mb_substr(strip_tags($data->content),0,10,"utf-8")',
   ),
  array('name'=>'type',
    'value'=>'News::model()->getNewsType($data->type)',
   ),
  'user',
  array('name'=>'status',
    'value'=>'News::model()->getNewsStatus($data->status)',
    ),
  array(
   'class'=>'CButtonColumn',
   'buttons'=>array(
    'view'=>array('visible'=>'false'),
    //'delete'=>array('click'=>'true'),
   ),
  ),
 ),
));

2. 复制基类分页类文件,做修改成为自己的分页方法

framework/web/widgets/pagers/CListPager.php复制并生命名到protected/components/zpager.php修改类名称

framework/web/widgets/pagers/pager.css复制对应样式文件到protected/components/css/pager.css

修改zpager.php的css加载目录

public static function registerCssFile($url=null)
{
 if($url===null)
  $url=CHtml::asset(Yii::getPathOfAlias('application.components.css.pager').'.css');
 Yii::app()->getClientScript()->registerCssFile($url);
}

3. 通过修改Css样式文件,也可以修改生成列表的程序,达到修改分类的目的。

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
谈谈PHP语法(4)
Oct 09 PHP
php的日期处理函数及uchome的function_coomon中日期处理函数的研究
Jan 12 PHP
php 截取字符串并以零补齐str_pad() 函数
May 07 PHP
用PHP实现 上一篇、下一篇的代码
Sep 29 PHP
PHP中替换键名的简易方法示例详解
Jan 07 PHP
php天翼开放平台短信发送接口实现方法
Dec 22 PHP
Laravel中使用阿里云OSS Composer包分享
Feb 10 PHP
CodeIgniter使用smtp服务发送html邮件的方法
Jun 10 PHP
CodeIgniter多语言实现方法详解
Jan 20 PHP
PHP入门教程之正则表达式基本用法实例详解(正则匹配,搜索,分割等)
Sep 11 PHP
如何运行/调试你的PHP代码
Oct 23 PHP
Docker 安装 PHP并与Nginx的部署实例讲解
Feb 27 PHP
全面解析PHP操作Memcache基本函数
Jul 14 #PHP
Yii视图CGridView实现操作按钮定义地址示例
Jul 14 #PHP
Yii中的relations数据关联查询及统计功能用法详解
Jul 14 #PHP
Yii基于CActiveForm的Ajax数据验证用法示例
Jul 14 #PHP
Yii实现Command任务处理的方法详解
Jul 14 #PHP
Yii使用DeleteAll连表删除出现报错问题的解决方法
Jul 14 #PHP
Yii+MYSQL锁表防止并发情况下重复数据的方法
Jul 14 #PHP
You might like
PHP函数篇之掌握ord()与chr()函数应用
2011/12/05 PHP
ThinkPHP2.0读取MSSQL提示Incorrect syntax near the keyword 'AS'的解决方法
2014/06/25 PHP
PHP简单实现DES加密解密的方法
2016/07/12 PHP
PHP获取访问页面HTTP状态码的实现代码
2016/11/03 PHP
PHP高效获取远程图片尺寸和大小的实现方法
2017/10/20 PHP
PHP笛卡尔积实现算法示例
2018/07/30 PHP
Thinkphp5框架异常处理操作实例分析
2020/06/03 PHP
Aster vs Newbee BO5 第二场2.19
2021/03/10 DOTA
JavaScript 开发规范要求(图文并茂)
2010/06/11 Javascript
JS中的prototype与面向对象的实例讲解
2013/05/22 Javascript
JQuery获取样式中的background-color颜色值的问题
2013/08/20 Javascript
jquery阻止冒泡事件使用模拟事件
2013/09/06 Javascript
jQuery大于号(&gt;)选择器的作用解释
2015/01/13 Javascript
Jquery中find与each方法用法实例
2015/02/04 Javascript
jQuery拖拽插件gridster使用指南
2015/04/21 Javascript
基于jQuery仿淘宝产品图片放大镜代码分享
2020/06/23 Javascript
JavaScript程序开发之JS代码放置的位置
2016/01/15 Javascript
jQuery计算文本框字数及限制文本框字数的方法
2016/03/01 Javascript
AngularJS基础 ng-keyup 指令简单示例
2016/08/02 Javascript
详解Angular的内置过滤器和自定义过滤器【推荐】
2016/12/26 Javascript
微信小程序 MD5加密登录密码详解及实例代码
2017/01/12 Javascript
Vue开发中整合axios的文件整理
2017/04/29 Javascript
详解Vue2 SSR 缓存 Api 数据
2017/11/20 Javascript
Vue中 v-if 和v-else-if页面加载出现闪现的问题及解决方法
2018/10/12 Javascript
如何实现一个webpack模块解析器
2018/10/24 Javascript
Vue组件教程之Toast(Vue.extend 方式)详解
2019/01/27 Javascript
灵活使用console让js调试更简单的方法步骤
2019/04/23 Javascript
JavaScript闭包相关知识解析
2019/10/19 Javascript
[00:10]DOTA2 TI9勇士令状明日上线
2019/05/07 DOTA
Python实现Linux的find命令实例分享
2017/06/04 Python
Python函数装饰器常见使用方法实例详解
2019/03/30 Python
高清屏中使用Canvas绘图出现模糊的问题及解决方法
2019/06/03 HTML / CSS
专科文秘应届生求职信
2013/11/18 职场文书
2015年度房地产工作总结
2015/04/09 职场文书
心理健康教育主题班会
2015/08/13 职场文书
详解Django的MVT设计模式
2021/04/29 Python