Thinkphp和Bootstrap结合打造个性的分页样式(推荐)


Posted in PHP onAugust 01, 2016

先吐槽一下ThinkPHP3.1版的分页样式,虽然看起来也很简单大方,但是所有的页码全是使用简单的数字,之间的空隙比较小,不大容易点,还有那个“前5页”和“后5页”显得有点多余,因为点击当前显示第一页的“上一页”按钮会自然出来前5页。

3.1的分页效果是这个样子滴:

Thinkphp和Bootstrap结合打造个性的分页样式(推荐)

针对以上种种不太理想的情况,又加上最近学习了ThinkPHP5,在ThinkPHP5中提供了对BootStrap分页样式的完美支持,在thinkphp5中只要引入了BootStrap.css文件,在使用Controller中使用分页函数后,前台自然就会按照BootStrap的样式来显示,效果是这个样子滴:

Thinkphp和Bootstrap结合打造个性的分页样式(推荐)

而我开发顶求网的时候ThinkPHP5还没出来,使用的是3.1版本,那么在3.1版中如何才能使用BootStrap的分页组件呢?以下是解决办法:

1.派生thinkphp的原生page.class.php类

为了不影响核心文件(违反设计模式种的对修改封闭原则),我派生了一个子类ListPage,该子类代码如下:

import('ORG.Util.Page');// 导入分页类
 class ListPage extends Page
 {//针对本系统User控制器特点重写Page类中相关函数
 /**
   * 分页显示输出
   * @access public
   */
  protected $config = array('header'=>'条记录','prev'=>'<','next'=>'>',
  'first'=>'<<','last'=>'>>',
  'theme'=>'%first% %upPage% %linkPage% %downPage% %end%');
  ……

可以看到,首先导入核心类所处的文件,然后就可以大胆的派生了,而这里只列出了核心代码。我们只需要修改page类中的Config变量就可以了,在子类中重写该变量为上面的形式,然后再所有Action(Controller)中使用该子类来建立分页对象即:

$Page=new ListPage($count,5);

这样就可以使用我们上面的设置了,好了,搞定,新的分页显示效果如下:

Thinkphp和Bootstrap结合打造个性的分页样式(推荐)

Thinkphp和Bootstrap结合打造个性的分页样式(推荐)

以上所述是小编给大家介绍的Thinkphp和Bootstrap结合打造个性的分页样式(推荐),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
在 PHP 中使用随机数的三个步骤
Oct 09 PHP
centos 5.6 升级php到5.3的方法
May 14 PHP
PHP持久连接mysql_pconnect()函数使用介绍
Feb 05 PHP
shell脚本作为保证PHP脚本不挂掉的守护进程实例分享
Jul 15 PHP
php中的strpos使用示例
Feb 27 PHP
CI框架给视图添加动态数据
Dec 01 PHP
Zend Framework教程之Application用法实例详解
Mar 14 PHP
PHP动态地创建属性和方法, 对象的复制, 对象的比较,加载指定的文件,自动加载类文件,命名空间
May 06 PHP
PHP filesize函数用法浅析
Feb 15 PHP
ThinkPHP中图片按比例切割的代码实例
Mar 08 PHP
CodeIgniter框架实现的整合Smarty引擎DEMO示例
Mar 28 PHP
php连接mysql之mysql_connect()与mysqli_connect()的区别
Jul 19 PHP
PHP实现将MySQL重复ID二维数组重组为三维数组的方法
Aug 01 #PHP
利用PHP自动生成印有用户信息的名片
Aug 01 #PHP
php+ajax登录跳转登录实现思路
Jul 31 #PHP
nginx下安装php7+php5
Jul 31 #PHP
header与缓冲区之间的深层次分析
Jul 30 #PHP
laravel学习教程之关联模型
Jul 30 #PHP
laravel学习教程之存取器
Jul 30 #PHP
You might like
php实现读取超大文件的方法
2014/07/28 PHP
Thinkphp5行为使用方法汇总
2017/12/21 PHP
一个无限级XML绑定跨框架菜单(For IE)
2007/01/27 Javascript
Js判断参数(String,Array,Object)是否为undefined或者值为空
2013/11/04 Javascript
使用javascript实现ListBox左右全选,单选,多选,全请
2013/11/07 Javascript
Javascript仿PHP $_GET获取URL中的参数
2014/05/12 Javascript
根据配置文件加载js依赖模块
2014/12/29 Javascript
探讨JavaScript标签位置的存放与功能有无关系
2016/01/15 Javascript
Node.js插件安装图文教程
2016/05/06 Javascript
JS组件Bootstrap Select2使用方法解析
2016/05/30 Javascript
老生常谈JQuery data方法的使用
2016/09/09 Javascript
div实现自适应高度的textarea实现angular双向绑定
2017/01/08 Javascript
React简单介绍
2017/05/24 Javascript
webstorm添加*.vue文件支持
2018/05/08 Javascript
基于JS实现计算24点算法代码实例解析
2020/07/23 Javascript
python base64 decode incorrect padding错误解决方法
2015/01/08 Python
python利用rsa库做公钥解密的方法教程
2017/12/10 Python
Django admin.py 在修改/添加表单界面显示额外字段的方法
2019/08/22 Python
PYTHON EVAL的用法及注意事项解析
2019/09/06 Python
详解Python3迁移接口变化采坑记
2019/10/11 Python
Python拼接字符串的7种方式详解
2020/03/19 Python
拿来就用!Python批量合并PDF的示例代码
2020/08/10 Python
Nike比利时官网:Nike.com (BE)
2019/02/07 全球购物
英国Lookfantastic中文网站:护肤品美妆美发购物(英国直邮)
2020/04/27 全球购物
测试驱动开发的主要步骤是什么
2014/12/10 面试题
国际经济贸易专业推荐信
2013/11/06 职场文书
房地产出纳岗位职责
2013/12/01 职场文书
美术指导助理求职信
2014/04/20 职场文书
社团活动总结范文
2014/04/26 职场文书
校运会口号
2014/06/18 职场文书
教师学习党的群众路线教育实践活动心得体会
2014/10/31 职场文书
会计工作总结范文2014
2014/12/23 职场文书
云冈石窟导游词
2015/02/04 职场文书
单位推荐信范文
2015/03/27 职场文书
学生安全责任协议书
2016/03/22 职场文书
VS2019连接MySQL数据库的过程及常见问题总结
2021/11/27 MySQL