多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
列表页分页分两种情况 1\.使用bootstrap框架布局页面,并使用bootstrap的分页插件进行分页 2\.未使用bootstrap框架布局页面 #### 1.使用bootstrap框架布局页面,并使用bootstrap的分页插件进行分页 在列表页中加入 <ul class="pagination" id="pagination"></ul> 代码,并引入bootstrappage.js分页插件,再写javascript代码分页代码。代码如下: <script type="text/javascript"> (function($) { // 通知公告列表 // value每页20条,15个按钮,共200条createPage({$listRow}, 15, {$count}); function createPage(pageSize, buttons, total) { $(".pagination").jBootstrapPage({ pageSize: pageSize, total: total, initSelecteIndex: {$p}, maxPageButton: buttons, onPageClicked: function(obj, pageIndex) { // urlAddParam('p', pageIndex + 1); window.location.href = urlAddParam('p', pageIndex + 1); } }); } /\*\* \* \[urlAddParam Thinkphp URL兼容模式添加参数\] \* @param {\[type\]} key \[参数键名\] \* @param {\[type\]} value \[参数值\] \* @return {\[type\]} \[Thinkphp URL兼容模式,URL字符串\] \*/ function urlAddParam(key, value){ var app = window.location.href; var split = '{:C("URL\_PATHINFO\_DEPR")}'; var paramSplit = {:C('URL\_MODEL')} > 2 ? '?s=' : '/'; if(paramSplit == '?s='){ var href = app.split(paramSplit)\[0\]; var param = app.split(paramSplit)\[1\]; }else{ var href = 'http://'+window.location.host var param = window.location.pathname.substr(1); } var ext = param.split('.')\[1\]; param = param.replace('.'+ext,''); YNCMS模板制作标签调用 param = param.split(split); var isexit = false; var index; for (var i = 0; i < param.length - 1; i++) { if(param\[i\] == key){ isexit = true; index = i; } } if(isexit){ param\[index + 1\] = value; }else{ param.push(key); param.push(value); } param = param.join(split); app = href + paramSplit + param + '.' + ext; return app; } })(jQuery); </script> YNCMS模板制作标签调用 param = param.split(split); var isexit = false; var index; for (var i = 0; i < param.length - 1; i++) { if(param\[i\] == key){ isexit = true; index = i; } } if(isexit){ param\[index + 1\] = value; }else{ param.push(key); param.push(value); } param = param.join(split); app = href + paramSplit + param + '.' + ext; return app; } })(jQuery); </script> 可以将上面这段代码封装入一个文件,再在需要的地方引入即可。 #### 2.未使用bootstrap框架布局页面 在列表页需要插入 {$page} 调用分页代码结构。 可以在Home分组Column控制器的index方法里面进行整站定制。 找到 $Page = new \\Think\\Page($count,$listRow); 代码,在该代码的下一行配置分页样式,通过 $Page -> setConfig(); 来进行配置。 setConfig方法支持的属性包括: 属性 描述 header 头部描述信息,默认值 “共 %TOTAL\_ROW% 条记录” prev 上一页描述信息,默认值 “<<” next 下一页描述信息,默认值 “>>” first 第一页描述信息,默认值 “1...” last 最后一页描述信息,默认值 “...%TOTAL\_PAGE%” theme 分页主题描述信息,包括了上面所有元素的组合 ,设置该属性可以改变分页的各个单元的显示位置,默认值是 "%FIRST% %UP\_PAGE% %LINK\_PAGE% %DOWN\_PAGE% %END%" 其中,显示位置的对应的关系为: 位置 说明 %FIRST% 表示第一页的链接显示 %UP\_PAGE% 表示上一页的链接显示 %LINK\_PAGE% 表示分页的链接显示 %DOWN\_PAGE% 表示下一页的链接显示 %END% 表示最后一页的链接显示 除了改变显示信息外,你还可以使用样式来定义分页的显示效果。 这些样式class包括:first(第一页)、 prev(上一页)、next(下一页)、end(最后一页)、num(其他页的数字)、current(当前页)。