bootstrap自带分页器的构造函数
来源:互联网 发布:js修改html属性值 编辑:程序博客网 时间:2024/06/06 18:13
/** * 生成分页器 * @param ele 需要添加分页器的元素 * @param offset 偏移量,即从第offset开始 * @param length 总记录条数 * @param showPages 分页器显示的页数,超过则隐藏多余的页 * @param rows 每页显示的记录条数 * @param cssType 分页样式,不填则为默认表格后添加tr */function burster(ele, offset, length, showPages, rows, cssType) { //将分页器装入table中 if (length && length > offset) { var pageHtml = ""; //清空需要装入的html var ass = ""; //需要显示的前页数/当前页 var beforePages = Math.ceil(offset / rows); //需要显示的后页数 var afterPages = Math.ceil((length - offset ) / rows); //总页数 var pages = Math.ceil(length / rows); var k = 0; //alert("总页数" + pages + " 前页数 " + beforePages + " 后页数 " + afterPages); //若页数小于showPages页,则全部显示 if (pages >= 0 && pages <= showPages) { for (k = 0; k < pages; k++) { if (k == beforePages) { pageHtml += "<li class='active' ><a>" + (k + 1) + "</a></li>"; } else { pageHtml += "<li><a class='pages' offset='" + (k * rows) + "'>" + (k + 1) + "</a></li>"; } } } //总页数大于showPages页 else if (pages > showPages) { if (beforePages <= Math.ceil(showPages / 2) && afterPages > showPages + 1) { for (k = 0; k < showPages; k++) { if (k == beforePages) { pageHtml += "<li class='active' ><a>" + (k + 1) + "</a></li>"; } else { pageHtml += "<li><a class='pages' offset='" + (k * rows) + "'>" + (k + 1) + "</a></li>"; } } pageHtml += "<li><a class='pages' offset='" + ((pages - 1) * rows) + "'>..." + pages + "</a></li>"; } else if (beforePages <= Math.ceil(showPages / 2) && afterPages == showPages + 1) { for (k = 0; k < showPages - 1; k++) { if (k == beforePages) { pageHtml += "<li class='active' ><a>" + (k + 1) + "</a></li>"; } else { pageHtml += "<li><a class='pages' offset='" + (k * rows) + "'>" + (k + 1) + "</a></li>"; } } pageHtml += "<li><a class='pages' offset='" + ((pages - 1) * rows) + "'>..." + pages + "</a></li>"; } else if (beforePages <= Math.ceil(showPages / 2) && afterPages <= showPages) { for (k = 0; k < showPages - 1; k++) { if (k == beforePages) { pageHtml += "<li class='active' ><a>" + (k + 1) + "</a></li>"; } else { pageHtml += "<li><a class='pages' offset='" + (k * rows) + "'>" + (k + 1) + "</a></li>"; } } pageHtml += "<li><a class='pages' offset='" + ((pages - 1) * rows) + "'>..." + pages + "</a></li>"; } else if (beforePages > Math.ceil(showPages / 2) && beforePages <= showPages && afterPages > showPages) { pageHtml += "<li><a class='pages' offset='0'>1...</a></li>"; for (k = beforePages - Math.ceil(showPages / 2) + 1; k < beforePages + Math.ceil(showPages / 2); k++) { if (k == beforePages) { pageHtml += "<li class='active' ><a>" + (k + 1) + "</a></li>"; } else { pageHtml += "<li><a class='pages' offset='" + (k * rows) + "'>" + (k + 1) + "</a></li>"; } } pageHtml += "<li><a class='pages' offset='" + ((pages - 1) * rows) + "'>..." + pages + "</a></li>"; } else if (beforePages > showPages && afterPages > showPages) { pageHtml += "<li><a class='pages' offset='0'>1...</a></li>"; for (k = beforePages - Math.ceil(showPages / 2) + 1; k < beforePages + Math.ceil(showPages / 2); k++) { if (k == beforePages) { pageHtml += "<li class='active' ><a>" + (k + 1) + "</a></li>"; } else { pageHtml += "<li><a class='pages' offset='" + (k * rows) + "'>" + (k + 1) + "</a></li>"; } } pageHtml += "<li><a class='pages' offset='" + ((pages - 1) * rows) + "'>..." + pages + "</a></li>"; } else if (beforePages > Math.ceil(showPages / 2) && beforePages <= pages && afterPages <= showPages && afterPages > Math.ceil(showPages / 2) + 1) { pageHtml += "<li><a class='pages' offset='0'>1...</a></li>"; for (k = beforePages - Math.ceil(showPages / 2) + 1; k < beforePages + Math.ceil(showPages / 2); k++) { if (k == beforePages) { pageHtml += "<li class='active' ><a>" + (k + 1) + "</a></li>"; } else { pageHtml += "<li><a class='pages' offset='" + (k * rows) + "'>" + (k + 1) + "</a></li>"; } } pageHtml += "<li><a class='pages' offset='" + ((pages - 1) * rows) + "'>..." + pages + "</a></li>"; } else if (beforePages > pages && afterPages <= showPages && afterPages > Math.ceil(showPages / 2) + 1) { pageHtml += "<li><a class='pages' offset='0'>1...</a></li>"; for (k = beforePages - Math.ceil(showPages / 2) + 1; k < beforePages + Math.ceil(showPages / 2); k++) { if (k == beforePages) { pageHtml += "<li class='active' ><a>" + (k + 1) + "</a></li>"; } else { pageHtml += "<li><a class='pages' offset='" + (k * rows) + "'>" + (k + 1) + "</a></li>"; } } pageHtml += "<li><a class='pages' offset='" + ((pages - 1) * rows) + "'>..." + pages + "</a></li>"; } else if (beforePages > Math.ceil(showPages / 2) && afterPages <= Math.ceil(showPages / 2) + 1) { pageHtml += "<li><a class='pages' offset='0'>1...</a></li>"; for (k = beforePages - Math.ceil(showPages / 2) + 1; k < pages; k++) { if (k == beforePages) { pageHtml += "<li class='active' ><a>" + (k + 1) + "</a></li>"; } else { pageHtml += "<li><a class='pages' offset='" + (k * rows) + "'>" + (k + 1) + "</a></li>"; } } } } //判断"上一页"和"下一页"是否存在 var upPage; var downPage; if (offset == 0 || (offset < rows && (offset % rows != 0))) { upPage = "<li><a class='pages' offset='" + parseInt(offset) + "' >?</a></li>" } else { upPage = "<li><a class='pages' offset='" + (parseInt(offset) - parseInt(rows)) + "' >?</a></li>"; } if (offset >= (length - rows)) { downPage = "<li><a class='pages' offset='" + parseInt(offset) + "'>?</a></li>" } else { downPage = "<li><a class='pages' offset='" + parseInt(parseInt(offset) + parseInt(rows)) + "'>?</a></li>" } //TODO 自定义分页器的样式 if (cssType) { if (pages != 1) {//TODO 分页页数小于1页时,不分页 if (cssType == "【自定义的样式名】") { ass += "<div id='pager' style='position:relative;height:34px;margin:0; '>" + "<ul style='position:absolute;right:0;margin: 0;' class='pagination'>" + upPage + pageHtml + downPage + "</ul></div>"; //table中注入拼装的记录 ele.append(ass); } } else { } } else { //分页部分 ass += "<tr><td colspan='10' align='right'>" + "<div id='pager' style='position:relative;height:40px;'>" + "<h4 id='result' style='position:absolute;left:0;'>" + "共有" + length + "条记录</h4>" + "<ul style='position:absolute;right:0;' class='pagination'>" + upPage + pageHtml + downPage + "</ul></div></td></tr>"; //table中注入拼装的记录 ele.append(ass); } }}
0 0
- bootstrap自带分页器的构造函数
- 分析thinkphp自带的分页函数
- tp自带分页类样式转Bootstrap分页样式
- tp自带分页类样式转Bootstrap分页样式
- DataGrid的自带分页
- ibatis 自带的分页
- Bootstrap前端分页的实现(带省略号)
- Bootstrap 自带组件
- **GridView**自带的分页和排序
- GridView自带的分页功能实现
- GridView自带的分页功能实现
- 使用GridView自带分页的代码
- 使用GridView自带分页的代码
- Yii 自带的分页实例
- php自带的简单分页
- 带构造函数的枚举
- 带参数的构造函数
- 带构造函数的枚举
- win7下搭建ftp服务器
- nginx之gzip压缩
- Python学习(1)——Python文档简介
- LeetCode : No1 Two Sum Python
- google focebook twiwer
- bootstrap自带分页器的构造函数
- Linux 命令tr
- 差不vc呢你地方的多少
- AC3/EAC3格式总结
- XCode6.1 无法连接SVN https
- HDU1022 Train Problem I
- Matlab自己实现Sobel边缘提取和ROA边缘提取
- Redis的Python
- Axis2实现web service接口开发+客户端调用