jquery pagination分页插件使用详解(后台struts2)


Posted in Javascript onJanuary 22, 2017

页面是用的纯css的效果,没有使用bootstrap的框架,不然自带的分页是挺好用的,就不用麻烦了这边使用了jquery pagination分页插件来实现这个功能的,这边后台用的是struts2的框架,ssh的,jquery返回json数据,然后循环拼接table输入到页面,这个分页插件使用起来感觉还是比较简单,代码编辑比较少,也有样式可以选择,但是那样要导入pagination.css在div中的class修改样式不导入的话就只有默认样式,这边样式也没有调节,不是很美观,功能实现了,干货:

效果图:

jquery pagination分页插件使用详解(后台struts2)

jsp:

<script src="<%=basePath %>bootstrap/js/jquery.pagination.js"></script> 
<div id="Pagination" class="pagination" text-align="right"><!-- 这里显示分页 --></div>

js:

var pageIndex = -1;  //页面索引初始值 
 var pageSize = 5;  //每页显示条数初始化,修改显示条数,修改这里即可 
 var pageCount = 0;  //每页显示条数初始化,修改显示条数,修改这里即可 
 InitTable(pageIndex); //Load事件,初始化表格数据,页面索引为0(第一页) 
  //分页,PageCount是总条目数,这是必选参数,其它参数都是可选 
  //翻页调用 
 function PageCallback(index, jq) { 
  InitTable(index); 
  } 
 
 //请求数据 
 function InitTable(pi) { 
  var sendpn = 0; 
  if(pi!=-1){ 
   sendpn = pi; 
  } 
  $.ajax({ 
   type: "POST", 
   dataType: "json", 
   url: 'findEquipmentInfo.action',  //提交到一般处理程序请求数据 
   data: {pageNo:sendpn,pageSize:pageSize},   //提交两个参数:pageIndex(页面索引),pageSize(显示条数) 
   success: function(data) { 
    var tabletr=''; 
    $(data.root).each(function(i,obj){ 
      tabletr=tabletr+"<tr><td><input type='checkbox' class='checkboxAll' value='"+obj.id+"'/></td><td>"+obj.deviceName+"</td>"+"<td>"+obj.deviceIP+"</td>"+"<td>"+obj.companyName+"</td>"+"<td>"+obj.deviceSN+"</td>"+"<td>"+obj.devicePN+"</td>"+"<td>"+obj.inTime+"</td>"+"<td>"+obj.warrantyTime+"</td>"+"</tr>"; 
    }); 
    $("#tablepos_tbody").html(tabletr); 
    pageCount = data.total; 
    if(pageIndex==-1){ 
     pageIndex=0; 
     $("#Pagination").pagination(pageCount, { 
      callback: PageCallback, //PageCallback() 为翻页调用次函数。 
      prev_text: "« 上一页", 
      next_text: "下一页 »", 
      items_per_page:pageSize, 
      num_edge_entries: 2,  //两侧首尾分页条目数 
      num_display_entries: 6, //连续分页主体部分分页条目数 
      current_page: pageIndex, //当前页索引 
     }); 
    } 
   } 
  }); 
 }

action:

private int rowCount=0; 
 private int pageNo=1; 
 private int pageSize=10; 
 private int pageCount=0; 
 private String result; 
  
public int getRowCount() { 
  return rowCount; 
 } 
 public void setRowCount(int rowCount) { 
  this.rowCount = rowCount; 
 } 
public int getPageNo() { 
 return pageNo; 
} 
public void setPageNo(int pageNo) { 
 this.pageNo = pageNo; 
} 
public int getPageSize() { 
 return pageSize; 
} 
public void setPageSize(int pageSize) { 
 this.pageSize = pageSize; 
} 
public int getPageCount() { 
 return pageCount; 
} 
public void setPageCount(int pageCount) { 
 this.pageCount = pageCount; 
} 
public String getResult() { 
 return result; 
} 
public void setResult(String result) { 
 this.result = result; 
}
public String findEquipmentInfo(){ 
 Page page =new Page(); 
 page.setStart(pageSize*pageNo); 
 page.setLimit((pageNo+1)*pageSize); 
 page.setTotalCount(service.rowCount()); 
 List list=service.allperson(pageNo, pageSize); 
 System.out.println(pageNo+" "+pageSize ); 
  this.setJsonStr(listToGridJoson(page, list)); 
 return SUCCESS; 
}

home:

int rowCount=0; 
public int rowCount(){ 
 String sql = "select count(*) from EQUIPMENT_INFO"; 
 Query query = sessionFactory.getCurrentSession().createSQLQuery(sql.toString()); 
 int rowCount = Integer.parseInt(query.uniqueResult().toString()); 
 return rowCount; 
} 
 
public List allperson(int pageNo,int pageSize){ 
 System.out.println(pageNo); 
 List list=this.all(pageNo, pageSize); 
 return list; 
} 
 
public List all(int pageNo,int pageSize){ 
 String sql = "from EquipmentInfo "; 
 Query query = sessionFactory.getCurrentSession().createQuery(sql.toString()); 
 query.setFirstResult(pageSize*pageNo); 
 query.setMaxResults(pageSize); 
 List list = query.list(); 
 return list; 
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery 简短几句代码实现给元素动态添加及获取提示信息
Sep 01 Javascript
多选列表框动态添加,移动,删除,全选等操作的简单实例
Jan 13 Javascript
百度判断手机终端并自动跳转js代码及使用实例
Jun 11 Javascript
关于数据与后端进行交流匹配(点亮星星)
Aug 03 Javascript
js面向对象实现canvas制作彩虹球喷枪效果
Sep 24 Javascript
JS遍历DOM文档树的方法实例详解
Apr 03 Javascript
微信小程序实现的canvas合成图片功能示例
May 03 Javascript
详解新手使用vue-router传参时注意事项
Jun 06 Javascript
Vue实现PC端靠边悬浮球的代码
May 09 Javascript
js实现点击上传图片并设为模糊背景
Aug 02 Javascript
用JS实现飞机大战小游戏
Jun 09 Javascript
HTML+JS实现在线朗读器
Feb 15 Javascript
jQuery中DOM节点的删除方法总结(超全面)
Jan 22 #Javascript
js实现贪吃蛇小游戏(容易理解)
Jan 22 #Javascript
JS常见简单正则表达式验证功能小结【手机,地址,企业税号,金额,身份证等】
Jan 22 #Javascript
利用CSS、JavaScript及Ajax实现图片预加载的三大方法
Jan 22 #Javascript
js实现图片360度旋转
Jan 22 #Javascript
Vue 过渡(动画)transition组件案例详解
Jan 22 #Javascript
BootstrapTable请求数据时设置超时(timeout)的方法
Jan 22 #Javascript
You might like
PHP foreach遍历多维数组实现方式
2016/11/16 PHP
PHP使用imagick扩展实现合并图像的方法
2017/04/25 PHP
php curl简单采集图片生成base64编码(并附curl函数参数说明)
2019/02/15 PHP
理清apply(),call()的区别和关系
2011/08/14 Javascript
js arguments对象应用介绍
2012/11/28 Javascript
js 获取坐标 通过JS得到当前焦点(鼠标)的坐标属性
2013/01/04 Javascript
IE8的JavaScript点击事件(onclick)不兼容的解决方法
2013/11/22 Javascript
jquery ajax 局部无刷新更新数据的实现案例
2014/02/08 Javascript
PHP开发者必须掌握的6个关键字
2014/04/14 Javascript
Jquery基础教程之DOM操作
2015/08/19 Javascript
js数组常用操作方法小结(增加,删除,合并,分割等)
2016/08/02 Javascript
jQuery插件WebUploader实现文件上传
2016/11/07 Javascript
Node.js利用Net模块实现多人命令行聊天室的方法
2016/12/23 Javascript
探究react-native 源码的图片缓存问题
2017/08/24 Javascript
Python读取图片为16进制表示简单代码
2018/01/19 Python
python数据结构之线性表的顺序存储结构
2018/09/28 Python
基于树莓派的语音对话机器人
2019/06/17 Python
十分钟搞定pandas(入门教程)
2019/06/21 Python
PyQT5 QTableView显示绑定数据的实例详解
2019/06/25 Python
在pycharm下设置自己的个性模版方法
2019/07/15 Python
Django自带的加密算法及加密模块详解
2019/12/03 Python
Pytorch 搭建分类回归神经网络并用GPU进行加速的例子
2020/01/09 Python
python小程序基于Jupyter实现天气查询的方法
2020/03/27 Python
Django 解决上传文件时,request.FILES为空的问题
2020/05/20 Python
Python中logging日志记录到文件及自动分割的操作代码
2020/08/05 Python
Python爬虫之Selenium中frame/iframe表单嵌套页面
2020/12/04 Python
CSS Grid布局教程之什么是网格布局
2014/12/30 HTML / CSS
英国巧克力贸易公司:Chocolate Trading Company
2017/03/21 全球购物
官方授权图形T恤和服装:Fifth Sun
2019/06/12 全球购物
考博自荐信
2013/10/25 职场文书
不打扫卫生检讨书
2014/02/12 职场文书
关于爱国的演讲稿
2014/05/07 职场文书
公司委托书格式
2014/08/01 职场文书
竞聘自述材料
2014/08/25 职场文书
党的群众路线教育实践活动个人对照检查剖析材料
2014/09/23 职场文书
公司的力量观后感
2015/06/05 职场文书