用layer插件实现tp3.2的分页
主要需要用到 /layer/layer.js 这个,
现在一个tp前端视图/article/index.html
<!DOCTYPE html>
<html lang="en"> <head>
<title>{$sys['sys_name']}</title>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <link href="__PUBLIC__/Admin/css/bootstrap.min.css?v=3.3.5" rel="stylesheet">
<link href="__PUBLIC__/Admin/css/font-awesome.min.css?v=4.1" rel="stylesheet">
<link href="__PUBLIC__/Admin/css/plugins/iCheck/custom.css" rel="stylesheet">
<link href="__PUBLIC__/Admin/css/plugins/chosen/chosen.css" rel="stylesheet">
<link href="__PUBLIC__/Admin/css/plugins/colorpicker/css/bootstrap-colorpicker.min.css" rel="stylesheet">
<link href="__PUBLIC__/Admin/css/plugins/cropper/cropper.min.css" rel="stylesheet">
<link href="__PUBLIC__/Admin/css/plugins/switchery/switchery.css" rel="stylesheet">
<link href="__PUBLIC__/Admin/css/plugins/jasny/jasny-bootstrap.min.css" rel="stylesheet">
<link href="__PUBLIC__/Admin/css/plugins/nouslider/jquery.nouislider.css" rel="stylesheet">
<link href="__PUBLIC__/Admin/css/plugins/datapicker/datepicker3.css" rel="stylesheet">
<link href="__PUBLIC__/Admin/css/plugins/clockpicker/clockpicker.css" rel="stylesheet">
<link href="__PUBLIC__/Admin/css/animate.min.css" rel="stylesheet">
<link href="__PUBLIC__/Admin/css/style.min.css?v=4.0.0" rel="stylesheet">
<link href="__PUBLIC__/Admin/css/uploadfile.css" rel="stylesheet">
<script src="__PUBLIC__/Admin/js/jquery.min.js?v=2.1.4"></script> //必须添加的js
<script src="__PUBLIC__/Common/layer/layer.js"></script> //必须添加的js
<script src="__PUBLIC__/Admin/js/jquery.form.js"></script>
</head>
<style>
.pages a,.pages span {
display:inline-block;
padding:4px 7px;
margin:0 2px;
border:1px solid #D5D4D4;
-webkit-border-radius:1px;
-moz-border-radius:1px;
border-radius:1px;
}
.pages a,.pages li {
display:inline-block;
list-style: none;
text-decoration:none; color:#077ee3;
} .pages a:hover{
border-color:#077ee3;
}
.pages span.current{
background:#077ee3;
color:#FFF;
font-weight:700;
border-color:#077ee3;
} .long-tr th{
text-align: center
}
.long-td td{
text-align: center
}
.long-td:hover{ background:#f5f5f5}
</style> <body class="gray-bg wrapper wrapper-content"> <div class="hr-line-dashed"></div> <form id="leftnav" name="leftnav" method="post" action="" >
<table class="table table-bordered">
<script id="arlist" type="text/html">
{{# for(var i=0;i<d.length;i++){ }}
<tr class="long-td">
<td>{{d[i].a_id}}</td>
</tr>
{{# } }}
</script>
<tbody id="article_list"></tbody>
</table>
</form> <div id="AjaxPage" style=" text-align: right;"></div>
<div id="allpage" style=" text-align: right;"></div>
</div> <script type="text/javascript" src="__PUBLIC__/Common/laytpl/laytpl.js"></script>
<script type="text/javascript" src="__PUBLIC__/Common/laypage/laypage.js"></script> <script type="text/javascript">
//laypage分页
function Ajaxpage(curr){ $.post('{:U("Article/index")}', {
page: curr || 1,
}, function(data){
if(data.list=null){
$("#article_list").html('<center style="margin-top:300px;font-size:15px;">没有数据</center>');
}else{
article_list(data.info);
laypage({
cont: $('#AjaxPage'),//容器。值支持id名、原生dom对象,jquery对象,
pages:'{$allpage}',//总页数
skip: true,//是否开启跳页
skin: '#1AB5B7',
curr: curr || 1,
groups: 4,//连续显示分页数
jump: function(obj, first){ if(!first){
Ajaxpage(obj.curr)
}
$('#allpage').html('第'+ obj.curr +'页,共'+ obj.pages +'页');
}
});
}
});
}
Ajaxpage(); //接收异步获取的数据渲染到模板
function article_list(list){
var tpl = document.getElementById('arlist').innerHTML;
laytpl(tpl).render(list, function(html){
document.getElementById('article_list').innerHTML = html;
});
} //状态 </script>
</body>
</html>
然后有一个相对应的控制器,ArticleController.class.php
<?php
namespace Otcms\Controller;
use Think\Controller;
use Common\Controller\AuthController;
use Think\Auth;
class ArticleController extends AuthController { public function index(){ $Nowpage = I("page")?I("page"):1; $limits = 10;// 获取总条数
$count = M('article')->count();//计算总页面
$allpage = ceil($count / $limits);
$allpage = intval($allpage); $lists = M('article')->page($Nowpage, $limits)->order('a_id desc')->select(); $this->assign('Nowpage', $Nowpage);
$this->assign('allpage', $allpage);
if(I("page")){ $this->success($lists);
} $this->display();
} }
这样就可以完成分页了
用layer插件实现tp3.2的分页的更多相关文章
- layer插件layer.photos()动态插入的图片无法正常显示
layer插件layer.photos()动态插入的图片无法正常显示,点击后面插入的图片,显示的是之前的图片列表,再次点击又是正常 有朋友遇到同样的问题 http://fly.layui.com/ji ...
- layer插件学习——弹框(自定义页)
本文是自己整理的关于layer插件的弹框样式结果 介绍: 官方介绍:layer至今仍作为layui的代表作,受众广泛并非偶然,而是这五年多的坚持,不断完善和维护.不断建设和提升社区服务,使得猿们纷纷自 ...
- layer插件学习——提示层
本文是自己整理的关于layer插件的提示层的结果 一.准备工作 下载jQuery插件和layer插件,并引入插件(注意:jQuery插件必须在layer插件之前引用) 百度云资源链接: jQuery插 ...
- layer插件学习——询问框
本文是自己整理的关于layer插件的询问框样式结果 一.准备工作 下载jQuery插件和layer插件,并引入插件(注意:jQuery插件必须在layer插件之前引用) 百度云资源链接: jQuery ...
- layer插件学习——icon样式
本文是自己整理的关于layer插件的icon样式结果 一.准备工作 下载jQuery插件和layer插件,并引入插件(注意:jQuery插件必须在layer插件之前引用) 百度云资源链接: jQuer ...
- 用jQuery Validate+layer插件实现好看的表单提交效果
作为初学者,以前做表单验证都是自己写的,目的是让自己更好的了解代码,加深自己对javascript的理解,但是其实在很久都知道有一个很好用的表单验证插件:jQuery Validate.js,一直都没 ...
- layer插件open方法回掉值问题
最近做项目需用到一个弹出层加载iframe页面的东西,首先想到layer插件,此插件用到过多次,兼容性很好,功能也强大,废话不多说上代码. 其实功能很简单,就是在目标页面选择一个值,回掉回来,说明一下 ...
- 弹出框layer插件
有时候我们在网页制作中需要引用各种弹出框,弹出框的展现形式多种多样.可以是弹出图片,视频,文字,也可以是弹出图片轮播等形式: 弹出框插件——layer使用方法(其实官方文档中已经介绍的很详细): 下载 ...
- 【spring boot】14.spring boot集成mybatis,注解方式OR映射文件方式AND pagehelper分页插件【Mybatis】pagehelper分页插件分页查询无效解决方法
spring boot集成mybatis,集成使用mybatis拖沓了好久,今天终于可以补起来了. 本篇源码中,同时使用了Spring data JPA 和 Mybatis两种方式. 在使用的过程中一 ...
随机推荐
- 在命令行中运行JUnit测试
可以在Eclipse之外运行JUnit测试,使用org.junit.runner.JUnitCore类. 这个类提供了runClasses()方法,它允许运行一个或多个测试类.runClasses() ...
- Spring JDBC多批次操作
以下示例将演示如何使用spring jdbc在单个调用中进行多批次更新. 我们将在批量大小为1的多批次操作中更新student表中的记录. student表的结果如下 - CREATE TABLE s ...
- e824. 获得和设置JSplitPane中的子组件
// Create a left-right split pane JSplitPane hpane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, lef ...
- perl学习(二)正则表达式
模式分组: /fred+/会匹配freddd这样的 /(fred)+/会匹配fredfredfred这样的 /(fred)*/则会匹配abcdef任意的 圆括号同时也使得重新使用某些字符串成为可能.反 ...
- CentOS 6.x安装配置MongoDB 3.4.x
说明: 操作系统:CentOS 5.X 64位 IP地址:192.168.21.128 实现目的: 安装配置MongoDB数据库 具体操作: 一.关闭SElinux.配置防火墙 1.vi /etc/s ...
- (诊断)解决GitHub使用双因子身份认证“Two-Factor Athentication”后无法git push 代码的“fatal: Authentication failed for ...”错误
在GitHub上采取双因子身份认证后,在git push 的时候将会要求填写用户的用户名和密码,用户名就是用户在GitHub上申请的用户名,但是密码不是普通登录GitHub的密码. 一旦采取双因子身份 ...
- goldengate一些參数整理
manager參数: AUTOSTART:指定在mgr启动时自己主动启动那些进程. AUTOSTART ER * AUTOSTART extract extsz AUTORESTART:指定在mgr ...
- UNIX环境编程学习笔记(6)——文件I/O之判断文件类型
lienhua342014-09-01 1 文件类型 我们平时最常接触的文件类型有普通文件(regular file)和目录(di-rectory file),但是 UNIX 系统提供了多种文件类型: ...
- vue获取dom元素注意问题
mounted(){ setTimeout(()=>{ this.contentToggle(); },1000) }, methods:{ contentToggle(){ console.l ...
- 手机端网页使用html5地理定位获取位置失败的解决办法
网上有很多关于html5 geolocation 获取地理定位的方法,我试了下,只有在IE edge浏览器可以成功获取到,在chrome,firefox,手机端的safari,QQ浏览器,微信浏览器, ...