tp3.2分页样式

tp3.2分页样式首先要搞清楚的就是ThinkPHP3.2.3的分页类已经被移到了Think\Page.class.php,这是跟以前的版本有些不一样的,使用起来还是跟以前版本差不多,但是默认的效果不敢恭维,所以最好是自己加些样式。我加了一些样式(不怎么好看),大家可以自行的再去改进分页样式,效果图:在这里我有先把page的设置做成了一个函数getpage,将这个方法放到Application\Commo…

大家好,又见面了,我是你们的朋友全栈君。

首先要搞清楚的就是ThinkPHP3.2.3的分页类已经被移到了Think\Page.class.php,这是跟以前的版本有些不一样的,使用起来还是跟以前版本差不多,但是默认的效果不敢恭维,所以最好是自己加些样式。
我加了一些样式(不怎么好看),大家可以自行的再去改进分页样式,效果图:

tp3.2分页样式

在这里我有先把page的设置做成了一个函数getpage,将这个方法放到Application\Common\Common\function.php(注意function不是类)中方便其他地方调用,代码如下:

/**
 * TODO 基础分页的相同代码封装,使前台的代码更少
 * @param $count 要分页的总记录数
 * @param int $pagesize 每页查询条数
 * @return \Think\Page
 */
function getpage($count, $pagesize = 7) {
    $p = new Think\Page($count, $pagesize);
    $p->setConfig('header', '<li class="rows">共<b>%TOTAL_ROW%</b>条记录 第<b>%NOW_PAGE%</b>页/共<b>%TOTAL_PAGE%</b>页</li>');
    $p->setConfig('prev', '上一页');
    $p->setConfig('next', '下一页');
    $p->setConfig('last', '末页');
    $p->setConfig('first', '首页');
    $p->setConfig('theme', '%FIRST%%UP_PAGE%%LINK_PAGE%%DOWN_PAGE%%END%%HEADER%');
    $p->lastSuffix = false;//最后一页不显示为总页数
    return $p;
}

控制器中使用的代码如下:


public function showAllUsers() {
        $m = M('User');      
        $where = "id>10";
        $count = $m->where($where)->count();
        $p = getpage($count,1);
        $list = $m->field(true)->where($where)->order('id')->limit($p->firstRow, $p->listRows)->select();
        $this->assign('list', $list); // 赋值数据集
        $this->assign('page', $p->show()); // 赋值分页输出
        $this->display();
    }

接下来在View中的使用:

<!DOCTYPE html>
<html>
 
	<head>
		<meta charset="UTF-8">
		<title></title>
		<!--分页的样式,这里可以单独写成一个css文件-->
		<style>
			.pages a,
			.pages span {
				display: inline-block;
				padding: 2px 5px;
				margin: 0 1px;
				border: 1px solid #f0f0f0;
				-webkit-border-radius: 3px;
				-moz-border-radius: 3px;
				border-radius: 3px;
			}
			
			.pages a,
			.pages li {
				display: inline-block;
				list-style: none;
				text-decoration: none;
				color: #58A0D3;
			}
			
			.pages a.first,
			.pages a.prev,
			.pages a.next,
			.pages a.end {
				margin: 0;
			}
			
			.pages a:hover {
				border-color: #50A8E6;
			}
			
			.pages span.current {
				background: #50A8E6;
				color: #FFF;
				font-weight: 700;
				border-color: #50A8E6;
			}
		</style>
	</head>
 
	<body>
 
		<div class="pages">
			{$page}
		</div>
 
	</body>
 
</html>

经过以上步骤就可以完成了

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/160621.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月17日 下午6:46
下一篇 2022年7月17日 下午6:46


相关推荐

  • dirsearch讲解_mv命令使用

    dirsearch讲解_mv命令使用dirsearch用法github地址参数选项(机翻)强制:字典设置:常规设置:请求设置:github地址https://github.com/maurosoria/dirsearch参数选项(机翻)强制:Mandatory:-uURL,–url=URL 目标URL-lFILE,–url-list=FILE 目标URL列表文件–stdin TargetURLlistfromSTDIN–cidr=CIDR

    2022年10月5日
    6
  • 负载均衡的算法有哪些_acwing是什么

    负载均衡的算法有哪些_acwing是什么G 公司有 n 个沿铁路运输线环形排列的仓库,每个仓库存储的货物数量不等。如何用最少搬运量可以使 n 个仓库的库存数量相同。搬运货物时,只能在相邻的仓库之间搬运。数据保证一定有解。输入格式第 1 行中有 1 个正整数 n,表示有 n 个仓库。第 2 行中有 n 个正整数,表示 n 个仓库的库存量。输出格式输出最少搬运量。数据范围1≤n≤100,每个仓库的库存量不超过 100。输入样例:517 9 14 16 4输出样例:11#include<bits/stdc++.

    2022年8月9日
    6
  • JAX-RS 2.0如何验证查询参数

    JAX-RS 2.0如何验证查询参数

    2022年3月4日
    50
  • route命令「建议收藏」

    route命令「建议收藏」转载:https://www.kancloud.cn/chunyu/php_basic_knowledge/2106519route命令详解route命令用于显示和操作IP静态路由表。路由表,指

    2022年7月1日
    35
  • MAX31865模块的使用-基于ZigBee_CC2530芯片 PT100测温

    MAX31865模块的使用-基于ZigBee_CC2530芯片 PT100测温前言  网络上关于ZigBee和MAX31865的相关资料较少,对于如何在CC2530上实现对PT100温度数据的读取的资料更是几乎没有。因此本文对MAX31865芯片和模块的使用进行简要介绍,并提供使用源码,同时提供自制模块的相关原理图。文章目录前言一、相关资料二、MAX31865芯片介绍2.1简介:2.2:读写时序2.3:配置寄存器2.4错误标志2.5温度读取三、MAX31865模块介绍3.1引脚介绍3.2线制选择与接线四、代码4.1配置I/O寄存器4.2SPI写寄存器4.3SPI读寄存

    2022年6月29日
    27
  • PyCharm激活码永久有效PyCharm2019.3.3激活码教程-持续更新,一步到位[通俗易懂]

    PyCharm激活码永久有效PyCharm2019.3.3激活码教程-持续更新,一步到位[通俗易懂]PyCharm激活码永久有效2019.3.3激活码教程-Windows版永久激活-持续更新,Idea激活码2019.3.3成功激活

    2022年6月19日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号