jQuery实现伪分页的方法分享


Posted in Javascript onFebruary 17, 2016

本文实例讲述了jQuery实现伪分页的方法。分享给大家供大家参考,具体如下:

可以对表格数据进行伪分页,而且只需要执行简单的代码就可以实现。

实现的很简单、样式也不太好看,大家可以自行调整,纠正。

下面是一个table,tbody里加载tr数据,无论你怎么加载,

在数据加载完成后便可以对table数据进行伪分页、注意div引用的class,我填充的数据是四列的,所以td里加了colspan,div是分页显示区域

<table>
   <tbody id="dialog-items">
    </tbody>
    <tfoot>
      <tr>
       <td colspan="4">
        <div id="maskPage" class="page_btn">
        </div>
       </td>
    </tr>
   </tfoot>
</table>

下面是css和js方法

.page_btn{padding-top:0px;}
.page_btn a{cursor:pointer;padding:5px;border:solid 1px #ccc;font-size:12px;}
.page_box{float:right;}
.num{padding:0 10px;}

js方法如下

//对tbody伪分页;pageDiv:用于显示分页数据的div tbodyId :tbody的ID,pageSize,分页数目
function pagiNation(pageDiv,tbodyId,pageSize){
  $("#"+tbodyId+" tr:gt("+(pageSize-1)+")").hide();//初始化,前面pageSize-1条数据显示,其他的数据隐藏。
  var total_q=$("#"+tbodyId+" tr").length;//总数据
  var current_page=pageSize;//每页显示的数据
  var current_num=1;//当前页数
  var total_page= Math.ceil(parseFloat(total_q)/parseFloat(current_page));//总页数
  var pagePlugIn = "<span class=\"page_box\">"+
          "<a id=\""+tbodyId+"_prev\" class=\"prev\">上一页</a>"+
          "<span id=\""+tbodyId+"_num\" class=\"num\">"+
          "<span id=\""+tbodyId+"_current_page\" class=\"current_page\">1</span>"+
          "<span style=\"padding:0 3px;\">/</span>"+
          "<span id=\""+tbodyId+"_total\" class=\"total\"></span></span>"+
          "<a id=\""+tbodyId+"_next\" class=\"next\">下一页</a>"+
          "</span>";
  $("#"+pageDiv+"").html(pagePlugIn);
  var next=$("#"+tbodyId+"_next");//下一页
  var prev=$("#"+tbodyId+"_prev");//上一页
  $("#"+tbodyId+"_total").text("");//显示总页数
  $("#"+tbodyId+"_total").text(total_page);//显示总页数
  $("#"+tbodyId+"_current_page").text("");//当前的页数
  $("#"+tbodyId+"_current_page").text(current_num);//当前的页数
  //下一页
 $("#"+tbodyId+"_next").unbind("click");
 $("#"+tbodyId+"_next").click(function(){
 if(current_num==total_page){
    return false;//如果大于总页数就禁用下一页
 }
 else{
   $("#"+tbodyId+"_current_page").text(++current_num);//点击下一页的时候当前页数的值就加1
   $.each($("#"+tbodyId+" tr"),function(index,item){
   var start = current_page* (current_num-1);//起始范围
   var end = current_page * current_num;//结束范围
   if(index >= start && index < end){//如果索引值是在start和end之间的元素就显示,否则就隐
    $(this).show();
   }else {
   $(this).hide();
   }
 });
 }
});
//上一页方法
$("#"+tbodyId+"_prev").unbind("click");
$("#"+tbodyId+"_prev").click(function(){
  if(current_num==1){
    return false;
  }else{
    $("#"+tbodyId+"_current_page").text(--current_num);
    $.each($("#"+tbodyId+" tr"),function(index,item){
    var start = current_page* (current_num-1);//起始范围
    var end = current_page * current_num;//结束范围
    if(index >= start && index < end){//如果索引值是start和end之间的元素就显示,否则就隐藏
      $(this).show();
    }else {
      $(this).hide();
    }
  });
}
})
  $("#"+pageDiv+"").show();
}

页面引用css和js,加载完成数据后,

function fillTabl(){
     ......................
     数据填充.............
     ..........................
     pagiNation('maskPage','dialog-items',10); //传入div的id,tbody的id,还有分页数
}

效果如下:

jQuery实现伪分页的方法分享

希望本文所述对大家jQuery程序设计有所帮助。

Javascript 相关文章推荐
Javascript 面向对象(三)接口代码
May 23 Javascript
原生js拖拽(第一课 未兼容)拖拽思路
Mar 29 Javascript
JQuery文本改变触发事件如聚焦事件、失焦事件
Jan 15 Javascript
用jQuery与JSONP轻松解决跨域访问的问题
Feb 04 Javascript
jQuery匹配文档链接并添加class的方法
Jun 26 Javascript
jQuery zTree加载树形菜单功能
Feb 25 Javascript
Augularjs-起步详解
Jul 08 Javascript
js 去掉字符串前后空格实现代码集合
Mar 25 Javascript
深入理解JavaScript 参数按值传递
May 24 Javascript
详解在React.js中使用PureComponent的重要性和使用方式
Jul 10 Javascript
javascript异常处理实现原理详解
Feb 17 Javascript
js实现自定义右键菜单
May 18 Javascript
jQuery simplePage+AJAX plus分页插件用法实例
Feb 17 #Javascript
DeviceOne 让你一见钟情的App快速开发平台
Feb 17 #Javascript
纯JavaScript代码实现文本比较工具
Feb 17 #Javascript
JavaScript实现身份证验证代码
Feb 17 #Javascript
AngularJS 最常用的功能汇总
Feb 17 #Javascript
AngularJS身份验证的方法
Feb 17 #Javascript
基于AngularJS+HTML+Groovy实现登录功能
Feb 17 #Javascript
You might like
学习使用curl采集curl使用方法
2012/01/11 PHP
探讨如何使用SimpleXML函数来加载和解析XML文档
2013/06/07 PHP
php实现文件预览功能
2017/05/23 PHP
php处理静态页面:页面设置缓存时间实例
2017/06/22 PHP
JavaScript接口实现代码 (Interfaces In JavaScript)
2010/06/11 Javascript
Javascript面向对象编程(二) 构造函数的继承
2011/08/28 Javascript
JS获取浏览器版本及名称实现函数
2013/04/02 Javascript
jquery foreach使用示例
2013/09/12 Javascript
js图片处理示例代码
2014/05/12 Javascript
JavaScript设计模式之观察者模式(发布者-订阅者模式)
2014/09/24 Javascript
jQuery实现手机号码输入提示功能实例
2015/04/30 Javascript
jQuery幻灯片特效代码分享--鼠标滑过按钮时切换(2)
2020/11/18 Javascript
Javascript复制实例详解
2016/01/28 Javascript
JSON与XML的区别对比及案例应用
2016/11/11 Javascript
移动适配的几种方案(三种方案)
2016/11/25 Javascript
ES6学习教程之模板字符串详解
2017/10/09 Javascript
深入分析JavaScript 事件循环(Event Loop)
2020/06/19 Javascript
vue点击Dashboard不同内容 跳转到同一表格的实例
2020/11/13 Javascript
python实现的重启关机程序实例
2014/08/21 Python
python通过apply使用元祖和列表调用函数实例
2015/05/26 Python
用不到50行的Python代码构建最小的区块链
2017/11/16 Python
Python socket连接中的粘包、精确传输问题实例分析
2020/03/24 Python
Python爬虫小例子——爬取51job发布的工作职位
2020/07/10 Python
python可视化 matplotlib画图使用colorbar工具自定义颜色
2020/12/07 Python
英国儿童家具专卖店:GLTC
2016/09/24 全球购物
Book Depository亚太地区:一家领先的国际图书零售商
2019/05/05 全球购物
用C或者C++语言实现SOCKET通信
2015/02/24 面试题
介绍一下游标
2012/01/10 面试题
法律专业求职信
2014/05/24 职场文书
篮球社团活动总结
2014/06/27 职场文书
保密工作整改情况汇报
2014/11/06 职场文书
2014年大堂经理工作总结
2014/11/21 职场文书
出纳岗位职责范本
2015/03/31 职场文书
mybatis使用oracle进行添加数据的方法
2021/04/27 Oracle
基于PyQt5制作一个群发邮件工具
2022/04/08 Python
详解Nginx的超时keeplive_timeout配置步骤
2022/05/25 Servers