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处理表单示例(javascript提交表单)
Apr 28 Javascript
JavaScript脚本库编写的方法
Dec 09 Javascript
基于Jquery插件Uploadify实现实时显示进度条上传图片
Mar 26 Javascript
AngularJS 模块详解及简单实例
Jul 28 Javascript
JavaScript中对象的不同创建方法
Aug 12 Javascript
JS复制对应id的内容到粘贴板(Ctrl+C效果)
Jan 23 Javascript
js实现日期显示的一些操作(实例讲解)
Jul 27 Javascript
javascript 产生随机数的几种方法总结
Sep 26 Javascript
JS实现获取word文档内容并输出显示到html页面示例
Jun 23 Javascript
AngularJs1.x自定义指令独立作用域的函数传入参数方法
Oct 09 Javascript
解决vue单页面应用打包后相对路径、绝对路径相关问题
Aug 14 Javascript
微信小程序实现弹幕墙(祝福墙)
Nov 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
深入php函数file_get_contents超时处理的方法详解
2013/06/03 PHP
php结合md5实现的加密解密方法
2016/01/25 PHP
Yii调试查看执行SQL语句的方法
2016/07/15 PHP
thinkphp关于简单的权限判定方法
2017/04/03 PHP
用js判断页面刷新或关闭的方法(onbeforeunload与onunload事件)
2012/06/22 Javascript
Jquery 改变radio/checkbox选中状态,获取选中的值(示例代码)
2013/12/12 Javascript
JS实现简单的图书馆享元模式实例
2015/06/30 Javascript
sencha ext js 6 快速入门(必看)
2016/06/01 Javascript
ros::spin() 和 ros::spinOnce()函数的区别及详解
2016/10/01 Javascript
JavaScript自定义文本框光标
2017/03/05 Javascript
EasyUI Datebox 日期验证之开始日期小于结束时间
2017/05/19 Javascript
js中int和string数据类型互相转化实例
2019/01/16 Javascript
5个你不知道的JavaScript字符串处理库(小结)
2020/06/01 Javascript
结合axios对项目中的api请求进行封装操作
2020/09/21 Javascript
[01:00]一分钟回顾2018DOTA2亚洲邀请赛现场活动
2018/04/07 DOTA
Django1.3添加app提示模块不存在的解决方法
2014/08/26 Python
Python使用matplotlib实现在坐标系中画一个矩形的方法
2015/05/20 Python
Python3写入文件常用方法实例分析
2015/05/22 Python
Python中operator模块的操作符使用示例总结
2016/06/28 Python
Python字符串处理实现单词反转
2017/06/14 Python
Python实现可自定义大小的截屏功能
2018/01/20 Python
python经典趣味24点游戏程序设计
2019/07/26 Python
python运用sklearn实现KNN分类算法
2019/10/16 Python
Numpy之将矩阵拉成向量的实例
2019/11/30 Python
Django修改app名称和数据表迁移方案实现
2020/09/17 Python
python解压zip包中文乱码解决方法
2020/11/27 Python
Antler英国官网:购买安特丽行李箱、拉杆箱
2019/08/25 全球购物
墨西哥购物网站:Elektra
2020/01/21 全球购物
银行存款证明样本
2014/01/17 职场文书
三查三看党性分析材料
2014/02/18 职场文书
反腐倡廉剖析材料
2014/09/30 职场文书
国际残疾人日广播稿范文
2014/10/09 职场文书
个人自查自纠材料
2014/10/14 职场文书
实习报告范文之电话客服岗位
2019/07/26 职场文书
PostgreSQL数据库去除重复数据和运算符的基本查询操作
2022/04/12 PostgreSQL
Python 一键获取电脑浏览器的账号密码
2022/05/11 Python