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 相关文章推荐
开源SNS系统-ThinkSNS
May 18 PHP
PHP 超链接 抓取实现代码
Jun 29 PHP
深入php多态的实现详解
Jun 09 PHP
在yii中新增一个用户验证的方法详解
Jun 20 PHP
浅析PHP的ASCII码转换类
Jul 05 PHP
PHP怎么实现网站保存快捷方式方便用户随时浏览
Aug 15 PHP
浅谈php优化需要注意的地方
Nov 27 PHP
使用php转义输出HTML到JavaScript
Mar 27 PHP
PHP SPL标准库之数据结构堆(SplHeap)简单使用实例
May 12 PHP
php获取客户端IP及URL的方法示例
Feb 03 PHP
PHP使用zlib扩展实现GZIP压缩输出的方法详解
Apr 09 PHP
PHP Include文件实例讲解
Feb 15 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中与数组相关的函数
2007/03/22 PHP
php的$_FILES的临时储存文件与回收机制实测过程
2013/07/12 PHP
php将access数据库转换到mysql数据库的方法
2014/12/24 PHP
php mysql实现mysql_select_db选择数据库
2016/12/30 PHP
CL vs ForZe BO5 第三场 2.13
2021/03/10 DOTA
JavaScript 学习历程和心得分享
2010/12/12 Javascript
你必须知道的Javascript知识点之&quot;字面量和对应类型&quot;说明介绍
2013/04/23 Javascript
js实现简单的购物车有图有代码
2014/05/26 Javascript
微信分享的标题、缩略图、连接及描述设置方法
2014/10/14 Javascript
纯jquery实现模仿淘宝购物车结算
2015/08/20 Javascript
使用JavaScript脚本判断页面是否在微信中被打开
2016/03/06 Javascript
深入理解jQuery中的事件冒泡
2016/05/24 Javascript
JS判断字符串变量是否含有某个字串的实现方法
2016/06/03 Javascript
微信小程序 动态的设置图片的高度和宽度详解及实例代码
2017/02/24 Javascript
Windows安装Node.js报错:2503、2502的解决方法
2017/10/25 Javascript
Angular6封装http请求的步骤详解
2018/08/13 Javascript
jQuery选择器之层次选择器用法实例分析
2019/02/19 jQuery
如何基于js判断浏览器版本
2020/02/20 Javascript
Vue项目打包部署到apache服务器的方法步骤
2021/02/01 Vue.js
[33:39]DOTA2上海特级锦标赛C组小组赛#2 LGD VS Newbee第二局
2016/02/27 DOTA
Python基于Tkinter的HelloWorld入门实例
2015/06/17 Python
浅谈python socket函数中,send与sendall的区别与使用方法
2017/05/09 Python
如何在 Django 模板中输出 &quot;{{&quot;
2020/01/24 Python
PyCharm 无法 import pandas 程序卡住的解决方式
2020/03/09 Python
Python爬虫之爬取淘女郎照片示例详解
2020/07/28 Python
CSS3 三维变形实现立体方块特效源码
2016/12/15 HTML / CSS
英国独特的时尚和生活方式品牌:JOY
2018/03/17 全球购物
Hammitt官网:设计师手袋
2020/05/23 全球购物
2019年Java面试必问之经典试题
2012/09/12 面试题
高中生学习总结的自我评价范文
2013/10/13 职场文书
反腐倡廉警示教育活动总结
2014/05/05 职场文书
入党转正介绍人意见
2015/06/03 职场文书
MySQL去除重叠时间求时间差和的实现
2021/08/23 MySQL
python机器学习创建基于规则聊天机器人过程示例详解
2021/11/02 Python
Nginx防盗链与服务优化配置的全过程
2022/01/18 Servers
实现GO语言对数组切片去重
2022/04/20 Golang