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 相关文章推荐
JavaScript创建命名空间(namespace)的最简实现
Dec 11 Javascript
js两行代码按指定格式输出日期时间
Oct 21 Javascript
jQuery 中使用JSON的实现代码
Dec 01 Javascript
js 调用本地exe的例子(支持IE内核的浏览器)
Dec 26 Javascript
纯JS焦点图特效实例(可一个页面多用)
Dec 07 Javascript
微信小程序 scroll-view组件实现列表页实例代码
Dec 14 Javascript
AngularJS与BootStrap模仿百度分页的示例代码
May 23 Javascript
vue3.0中的双向数据绑定方法及优缺点
Aug 01 Javascript
vue transition 在子组件中失效的解决
Nov 12 Javascript
基于脚手架创建Vue项目实现步骤详解
Aug 03 Javascript
JavaScript代码实现微博批量取消关注功能
Feb 05 Javascript
vue3.0中使用element的完整步骤
Mar 04 Vue.js
一个关于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
逐步提升php框架的性能
2008/01/10 PHP
探讨如何把session存入数据库
2013/06/07 PHP
PHP冒泡算法详解(递归实现)
2014/11/10 PHP
静态html文件执行php语句的方法(推荐)
2016/11/21 PHP
php+Memcached实现简单留言板功能示例
2017/02/15 PHP
jMessageBox 基于jQuery的窗口插件
2009/12/09 Javascript
js 无提示关闭浏览器页面的代码
2010/03/09 Javascript
js实现的跟随鼠标移动的时钟效果(中英文日期显示)
2011/01/17 Javascript
使用JavaScript 实现各种跨域的方法
2013/05/08 Javascript
jQuery实现密保互斥问题解决方案
2013/08/16 Javascript
通过JS来判断页面控件是否获取焦点
2014/01/03 Javascript
JavaScript表单通过正则表达式验证电话号码
2014/03/14 Javascript
js点击事件链接的问题解决
2014/04/25 Javascript
BootStrap的Datepicker控件使用心得分享
2016/05/25 Javascript
ES6学习教程之Map的常用方法总结
2017/08/03 Javascript
JavaScript中使用import 和require打包后实现原理分析
2018/03/07 Javascript
python二叉树的实现实例
2013/11/21 Python
Python Web框架Flask中使用新浪SAE云存储实例
2015/02/08 Python
使用Python编写一个简单的tic-tac-toe游戏的教程
2015/04/16 Python
Python中super()函数简介及用法分享
2016/07/11 Python
详解Python最长公共子串和最长公共子序列的实现
2018/07/07 Python
Linux下多个Python版本安装教程
2018/08/15 Python
python高级特性和高阶函数及使用详解
2018/10/17 Python
Python PO设计模式的具体使用
2019/08/16 Python
matplotlib jupyter notebook 图像可视化 plt show操作
2020/04/24 Python
python日志通过不同的等级打印不同的颜色(示例代码)
2021/01/13 Python
prAna官网:瑜伽、旅行和冒险服装
2019/03/10 全球购物
大唐电信科技股份有限公司java工程师面试经历
2016/12/09 面试题
幼儿园教师岗位职责
2014/03/17 职场文书
《蚕姑娘》教学反思
2014/04/15 职场文书
2014最新房贷收入证明范本
2014/09/12 职场文书
2014年教学工作总结
2014/11/13 职场文书
2015年污水处理厂工作总结
2015/05/26 职场文书
mysql中between的边界,范围说明
2021/06/08 MySQL
总结一些Java常用的加密算法
2021/06/11 Java/Android
PHP中多字节字符串操作实例详解
2021/08/23 PHP