列表页分页分两种情况
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(当前页)。
- ThinkPHP模板
- 变量输出
- 系统变量
- 系统变量输出
- 常量输出
- 配置输出
- 语言变量
- 使用函数
- 默认值输出
- 使用运算符
- 标签库
- 导入标签库
- 内置标签
- 标签库预加载
- 模板继承
- 修改定界符
- 普通标签
- XML标签
- 三元运算符
- 包含文件
- 使用模版表达式
- 使用模版文件
- 传入参数
- 内置标签
- Volist标签
- Foreach标签
- For标签
- Switch标签
- 比较标签
- 范围判断标签
- IN和NOTIN
- BETWEEN 和 NOTBETWEEN
- RANGE
- IF标签
- Present标签
- Empty标签
- Defined标签
- Assign标签
- Define标签
- 标签嵌套
- import标签
- 使用PHP代码
- 使用php标签
- 使用原生php代码
- 原样输出
- 模板注释
- 单行注释
- 多行注释
- 模板布局
- 第一种方式:全局配置方式
- 第二种方式:模板标签方式
- 第三种方式:使用layout控制模板布局
- 模板替换
- 调用导航
- 调用栏目信息
- 根据栏目Id获取栏目信息
- 首页&封面调用信息列表
- 调用新闻列表
- 当前位置
- 当前位置
- 列表页分页
- 热门信息
- 获取热门信息
- 上一篇&下一篇
- YNCMS函数
- YNCMS插件开发
- 开始开发