function index(){ header('Content-Type:text/html;charset=utf-8'); // 获取当前页码,默认第一页,设置每页默认显示条数 $nowpage = I('get.page', 1, 'intval'); $limits = 8; // 获取总条数 $count = M('Article') -> where(array('status'=>array('egt', 0))) -> count(); // 计算总页面 $allpage = ceil($count / $limits); $allpage = intval($allpage); $lists = M('Article') -> where(array('status'=>array('egt', 0))) -> page($nowpage, $limits) // page 方法分页 -> order('createtime desc') -> select(); // 跳转分页输出 $this -> assign('lists', $lists); $this -> assign('allpage', $allpage); $this -> assign('nowpage', $nowpage); $this->display(); /* // ajax 分页输出 $info = array('lists'=>$lists,'allpage'=>$allpage,'nowpage'=>$nowpage); $this->ajaxReturn($info,'json'); */ }
js 中 laypage(新版本) 跳转分页
// 分页 laypage({ cont: 'show_pages', // 分页容器 pages: "{$allpage}", // 总页数 skip: true, //是否开启跳页 curr: function(){ var page = "{$nowpage}"; // 当前页(后台获取到的) return page ? page : 1; // 返回当前页码值 }(), jump: function(e, first){ //触发分页后的回调(单击页码后) if(!first){ //一定要加此判断,否则初始时会无限刷新 var urls = "{:U('article/index',array('page'=>'pageval'))}"; var nowpage = e.curr; // (被单击的页码) urls = urls.replace('pageval',nowpage); // 替换链接样式和页码 window.location.href = urls; } } });
js 中 laypage(新版本) ajax 分页
function demo(curr){ $.getJSON("{:U('article/index')}", { page: curr //向服务端传的参数,此处只是演示 }, function(res){ // 服务器返回的 json 结果 // 这里处理 res.lists 中的数据内容,使用 html() 方法显示 // 略…… //显示分页 laypage({ cont: 'show_pages', // 容器 pages: res.allpage, // 总页数(后台的) curr: res.nowpage, //当前页(后台获取到的) jump: function(obj, first){ //触发分页后的回调(单击页码后) if(!first){ //点击跳页触发函数自身,并传递当前页:obj.curr demo(obj.curr); // (被单击的页码) } } }); }); }; // 初始化运行 demo();