先吐槽一下ThinkPHP3.1版的分页样式,虽然看起来也很简单大方,但是所有的页码全是使用简单的数字,之间的空隙比较小,不大容易点,还有那个“前5页”和“后5页”显得有点多余,因为点击当前显示第一页的“上一页”按钮会自然出来前5页。3.1的分页效果是这个样子滴:
针对以上种种不太理想的情况,又加上最近学习了ThinkPHP5,在ThinkPHP5中提供了对BootStrap分页样式的完美支持,在thinkphp5中只要引入了BootStrap.css文件,在使用Controller中使用分页函数后,前台自然就会按照BootStrap的样式来显示,效果是这个样子滴:
而我开发顶求网的时候ThinkPHP5还没出来,使用的是3.1版本,那么在3.1版中如何才能使用BootStrap的分页组件呢?以下是解决办法:
-
派生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版本)的更多相关文章
-
简单实用的php分页函数代码
一个简单实用的php分页函数,分页导航中可以默认为空,在函数内部再设置本页URL. 代码: <?php /** * 分页 * @category 功能 * @param $totle:信息总数 ...
-
简单实用的jQuery分页插件
在做商城和订单管理的时候,常常会用到分页功能,所以我封装了一个jQuery的分页插件,该插件主要实现上下翻页,输入数字跳转等功能. 具体实现如下: 输入参数需要当前页码pageNo,总页码totalP ...
-
thinkphp分页样式
html代码: <div class="pages">{$page}</div> css代码: .pages{ width:100.5%; text-ali ...
-
thinkPHP 分页样式增加下拉列表
$linkPage=" <select name='sldd' style='width:40px;height:30px;border:1px red block;' onchan ...
-
thinkphp分页样式css代码
<style type="text/css"> .Pagination a:hover,.current{background-color: #f54281;borde ...
-
thinkphp 漂亮的分页样式
---恢复内容开始--- 首先:需要两个文件 page.class.php page.css 1.在TP原有的 page.class.php 文件稍作修改几条代码就可以了, 修改过的地方我会注释, 2 ...
-
yii使用bootstrap分页样式
Bootstrap是Twitter推出的一个开源的用于前端开发的工具包.它由Twitter的设计师Mark Otto和Jacob Thornton合作开发,是一个CSS/HTML框架.Bootstra ...
-
简单实用的原生PHP分页类
一款简单实用的原生PHP分页类,分页按钮样式简洁美观,页码多的时候显示“...”,也是挺多网站用的效果 核心分页代码 include_once("config.php"); req ...
-
基于Bootstrap简单实用的tags标签插件
http://www.htmleaf.com/jQuery/ jQuery之家 *分享jQuery.html5和css3的插件库 基于Bootstrap简单实用的tags标签插件
随机推荐
-
java 对象输入输出流
对象的输入输出流的作用: 用于写入对象 的信息读取对象的信息. 对象的持久化. 比如:用户信息. ObjectInputStream : 对象输入流 ...
-
使用jmeter对ActiveMQ集群性能方案进行评估--转载
原文地址:http://www.51testing.com/html/78/23978-143163.html 1.测试概要1.1 关于这篇文档中涉及的基于JMS的消息系统能为应用程序提供可靠的,高性 ...
-
linux内核编译,内核参数修改
核心(kernel):/boot/vmlinuz-version version 带发行包版本,本地版本内核模块(kernel object): /lib/modules/version/ 内核设计: ...
-
Android输入法 监听事件
登录界面有一个输入用户名和密码的编辑框: private EditText et_userName;// 账户 private EditText et_password;// 密码 布局文件如下: & ...
-
STEAM 自动安装时提示C++ 安装不了等问题
[情况] 今天安装游戏, 安装时自动安装 Visual C++ 2015 x64 Minimum Runtime ....不成功, 提示网络源不可使用, 或者使用以下安装源 C:\ProgramDat ...
-
【Android开发】如何设计开发一款Android App
本文从开发工具选择,UI界面.图片模块.网络模块.数据库产品选择.性能.安全性等几个方面讲述了如果开发一个Android应用.现在整理出来分享给广大的Android程序员. 开发工具的选择 开发工具我 ...
-
使用git bush 生成github SSH公钥
1 如果没有安装ssh,那么使用下面的指令 sudo apt-get install ssh 2 检查SSH公钥 cd ~/.ssh 看看存不存在.ssh,如果存在的话,掠过下一步:不存在的请看下一步 ...
-
JACOB的语法
转自:http://www.bitscn.com/pdb/java/200904/161117.html 如果你想写一个JAVA代码,其中需要调用JACOB提供的功能,而你还是新手,也许篇文章会大大降 ...
-
phpcms 列表页中调用其下的所有子栏目(或特定的子栏目)的方法
phpcms 列表页中,如何调用其下的所有子栏目(或特定的子栏目),具体的写法如下,感兴趣的朋友可以参考下,希望对大家有所帮助 代码如下: {pc:get sql="select * fro ...
-
Hadoop Intro - Configure
Hadoop学习(二) Hadoop配置文件参数详解 Hadoop运行模式分为安全模式和非安全模式,在这里,我将讲述非安全模式下,主要配置文件的重要参数功能及作用,本文所使用的Hadoop版本为2 ...