jQuery中jqGrid分页实现代码


Posted in Javascript onNovember 04, 2011

(1)页面代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<title>Insert title here</title> 
<link rel="stylesheet" type="text/css" media="screen" 
href="js/themes/basic/grid.css" /> 
<script type="text/javascript" src="js/jquery.js"></script> 
<script type="text/javascript" src="js/jquery.jqGrid.js"></script> 
<script type="text/javascript"> 
jQuery(document).ready(function(){ 
jQuery("#myTab").jqGrid({ 
datatype: "json", //将这里改为使用JSON数据 
url:'DataServlet', //这是Action的请求地址 
mtype: 'POST', 
height: 250, 
width: 400, 
colNames:['编号','姓名', '电话'], 
colModel:[ 
{name:'id',index:'id', width:60, sorttype:"int"}, 
{name:'name',index:'name', width:90}, 
{name:'phone',index:'phone', width:100} 
], 
pager: 'pager', //分页工具栏 
imgpath: 'js/themes/basic/images', //图片存放路径 
rowNum:10, //每页显示记录数 
viewrecords: true, //是否显示行数 
rowList:[10,20,30], //可调整每页显示的记录数 
multiselect: false, //是否支持多选 
caption: "信息显示" 
}); 
}); 
</script> 
</head> 
<body> 
<table id="myTab" class="scroll" cellpadding="0" cellspacing="0"></table> 
<div id="pager" class="scroll"></div> 
</body> 
</html>

(2)后台的servlet,里面的数据是模拟的
/** 
* Servlet implementation class DataServlet 
*/ 
public class DataServlet extends HttpServlet { 
private static final long serialVersionUID = 1L; /** 
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse 
* response) 
*/ 
protected void doGet(HttpServletRequest request, 
HttpServletResponse response) throws ServletException, IOException { 
// TODO Auto-generated method stub 
} 
/** 
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse 
* response) 
*/ 
protected void doPost(HttpServletRequest request, 
HttpServletResponse response) throws ServletException, IOException { 
String page = request.getParameter("page"); // 取得当前页数,注意这是jqgrid自身的参数 
String rows = request.getParameter("rows"); // 取得每页显示行数,,注意这是jqgrid自身的参数 
int totalRecord = 80; // 总记录数(应根据数据库取得,在此只是模拟) 
int totalPage = totalRecord % Integer.parseInt(rows) == 0 ? totalRecord 
/ Integer.parseInt(rows) : totalRecord / Integer.parseInt(rows) 
+ 1; // 计算总页数 
try { 
int index = (Integer.parseInt(page) - 1) * Integer.parseInt(rows); // 开始记录数 
int pageSize = Integer.parseInt(rows); 
// 以下模拟构造JSON数据对象 
String json = "{total: " + totalPage + ", page: " + page 
+ ", records: " + totalRecord + ", rows: ["; 
for (int i = index; i < pageSize + index && i < totalRecord; i++) { 
json += "{cell:['ID " + i + "','NAME " + i + "','PHONE " + i 
+ "']}"; 
if (i != pageSize + index - 1 && i != totalRecord - 1) { 
json += ","; 
} 
} 
json += "]}"; 
response.getWriter().write(json); // 将JSON数据返回页面 
} catch (Exception ex) { 
} 
} 
}

目录结构:

jQuery中jqGrid分页实现代码
 展现的效果:

jQuery中jqGrid分页实现代码
 http://blog.csdn.net/polaris1119/archive/2010/01/04/5130974.aspx

http://d.download.csdn.net/down/1142295/ctfzh

http://hi.baidu.com/fangle_life/blog/item/1076b6fa85a9ba1c6d22eb1e.html

http://blog.csdn.net/polaris1119/archive/2010/01/12/5183327.aspx

Javascript 相关文章推荐
jQuery之字体大小的设置方法
Feb 27 Javascript
浅谈JavaScript的push(),pop(),concat()方法
Jun 03 Javascript
jQuery实现的导航下拉菜单效果
Jul 04 Javascript
js判断数组key是否存在(不用循环)的简单实例
Aug 03 Javascript
jackson解析json字符串,首字母大写会自动转为小写的方法
Dec 22 Javascript
浅谈vue后台管理系统权限控制思考与实践
Dec 19 Javascript
node.js中ws模块创建服务端和客户端,网页WebSocket客户端
Mar 06 Javascript
vue使用i18n实现国际化的方法详解
Sep 05 Javascript
JavaScript实现电灯开关小案例
Mar 30 Javascript
JavaScript检测浏览器是否支持CSS变量代码实例
Apr 03 Javascript
详解JavaScript中的Object.is()与&quot;===&quot;运算符总结
Jun 17 Javascript
react 项目中引入图片的几种方式
Jun 02 Javascript
一个关于jqGrid使用的小例子(行按钮)
Nov 04 #Javascript
给jqGrid数据行添加修改和删除操作链接(之一)
Nov 04 #Javascript
在网站上应该用的30个jQuery插件整理
Nov 03 #Javascript
关于URL中的特殊符号使用介绍
Nov 03 #Javascript
javascript学习基础笔记之DOM对象操作
Nov 03 #Javascript
40款非常棒的jQuery 插件和制作教程(系列二)
Nov 02 #Javascript
遍历jquery对象的代码分享
Nov 02 #Javascript
You might like
jquery checkbox,radio是否选中的判断代码
2010/03/20 Javascript
javascript 节点排序 2
2011/01/31 Javascript
jQuery中获取Radio元素值的方法
2013/07/02 Javascript
在每个匹配元素的外部插入新元素的方法
2013/12/20 Javascript
常用的几段javascript代码分享
2014/03/25 Javascript
对jquery的ajax进行二次封装以及ajax缓存代理组件:AjaxCache详解
2016/04/11 Javascript
AngularJs学习第八篇 过滤器filter创建
2016/06/08 Javascript
轻松掌握JavaScript状态模式
2016/09/07 Javascript
微信小程序 form组件详解
2016/10/25 Javascript
jQuery中select与datalist制作下拉菜单时的区别浅析
2016/12/30 Javascript
解决URL地址中的中文乱码问题的办法
2017/02/10 Javascript
BootStrap的两种模态框方式
2017/05/10 Javascript
JS验证输入的是否是数字及保留几位小数问题
2018/05/09 Javascript
NodeJS实现同步的方法
2019/03/02 NodeJs
js实现登录拖拽窗口
2020/02/10 Javascript
使用Typescript和ES模块发布Node模块的方法
2020/05/25 Javascript
如何在微信小程序中使用骨架屏的步骤
2020/06/12 Javascript
[06:23]2014DOTA2西雅图国际邀请赛 小组赛7月12日TOPPLAY
2014/07/12 DOTA
用python写一个windows下的定时关机脚本(推荐)
2017/03/21 Python
python 实现批量xls文件转csv文件的方法
2018/10/23 Python
解决Python import docx出错DLL load failed的问题
2020/02/13 Python
如何用Python绘制3D柱形图
2020/09/16 Python
css3学习之2D转换功能详解
2016/12/23 HTML / CSS
详解background属性的8个属性值(面试题)
2020/11/02 HTML / CSS
Staples英国官方网站:办公用品一站式采购
2017/10/06 全球购物
工业设计专业推荐信
2013/10/29 职场文书
什么样的创业计划书可行性高?
2014/02/01 职场文书
入党积极分子学习两会心得体会范文
2014/03/17 职场文书
大学生村官座谈会发言材料
2014/05/25 职场文书
2016幼儿园毕业感言
2015/12/08 职场文书
职场新人知识:如何制定一份合理的工作计划?
2019/09/11 职场文书
Idea连接MySQL数据库出现中文乱码的问题
2021/04/14 MySQL
详解nodejs内置模块
2021/05/06 NodeJs
NodeJs内存占用过高的排查实战记录
2021/05/10 NodeJs
python实现简单的聊天小程序
2021/07/07 Python
redis 解决库存并发问题实现数量控制
2022/04/08 Redis