jqgrid本地加载分页_jqGrid 分页
这两天一直在搞jqGrid分页,焦头烂额,不过还是有点收获的(主要是后台分页);
jqGrid分页可以分为两种,远程数据(服务器数据)分页和本地数据分页,
先看远程数据分页:
$("#testGrid").jqGrid({
mtype: "POST",
datatype: "json", //返回的是JSON格式的数据
pager: "#userListPg", //表格分页
rowNum: 2, // 每页多少行,用于分页
rownumbers: true,//显示行号
colModel : userCM,// 自定义
jsonReader: {
id: "id" //数据唯一值,
root: 'users', //加载的数据
page: 'page', //当前页
total: 'total', // 很重要 定义了 后台返回的总页数名称。
records: 'records', // 后台返回的总数据条数; 以上5个参数一定要跟后台返回的json格式数据中,名称相同
repeatitems: false,
},
onPaging: function (pageBtn) { //翻页按钮点击事件,pageBtn 与 pager(表格分页有关),为 next_ 加上分页名
var re_page = $(this).getGridParam('page');//获取返回的当前页
var re_rowNum = $(this).getGridParam('rowNum');//获取每页数
if (pageBtn === "next_userListPg") {
queryFunc(re_page, re_rowNum);
}else if (pageBtn === "prev_userListPg") {
queryFunc(re_page, re_rowNum);
}else if (pageBtn === "last_userListPg") {
queryFunc(re_total, re_rowNum);
}else if (pageBtn === "first_userListPg") {
queryFunc(1, re_rowNum);
}
},
});
function queryFunc(cr_page,size) {
//加载数据:
$("#testGrid").jqGrid('setGridParam',{
url: "getUsr.do",
postData:{ page : cr_page, size : size, 'user_age' : 20}, //发送数据,查第一页,只查2条(grid rowNum),找到所有20岁的人
}).trigger("reloadGrid");
}
后台返回数据:
{
page: "1", //当前页
total: "3" //一共的页数
records :"10",//总条数
users :[
{id:"1",user_name:"张三",age:"20",},
{id:"2",user_name:"李四",age:"20",},
],
}
加载本地数据:
初始化grid:
$("#testGrid").jqGrid({
mtype: "POST",
datatype: "local", //返回的是JSON格式的数据
pager: "#toolListPg", //表格分页
rowNum: 2, // 每页多少行,用于分页
rownumbers: true,//显示行号
colModel : userCM,// 自定义
onPaging: function (pageBtn) { //翻页按钮点击事件,pageBtn 与 pager(表格分页有关),为 next_ 加上分页名
var re_page = $(this).getGridParam('page');//获取返回的当前页
var re_rowNum = $(this).getGridParam('rowNum');//获取每页数
if (pageBtn === "next_userListPg") {
queryFunc(re_page, re_rowNum);
}else if (pageBtn === "prev_userListPg") {
queryFunc(re_page, re_rowNum);
}else if (pageBtn === "last_userListPg") {
queryFunc(re_total, re_rowNum);
}else if (pageBtn === "first_userListPg") {
queryFunc(1, re_rowNum);
}
},
});
function queryFunc(cr_page,size){
$.aiax({
type:"post",
url : "getUsr.do",
data:{
page: cr_page,
size: size
user_age :20
},
async:false, //同步
success:function (data) {
data = JSON.parse(data); //装换成JSON格式
//加载数据
$("#testGrid").jqGrid('setGridParam', {
data :data.users,
localReader:{
root: function () {returndata.users},
page: function(object){ returndata.page},
total:function(object){ returndata.total},
records:function(object){ returndata.records},
repeatitems : false
},
}).trigger("reloadGrid");
},
error : function(xhr, stat, e){
console.error(xhr);
}
});
}
本地数据:
data:{
page: "1", //当前页
total: "3" //一共的页数
records :"10",//总条数
users :[
{id:"1",user_name:"张三",age:"20",},
{id:"2",user_name:"李四",age:"20",},
],
}
这样就能加载进去了,
加载远程数据是异步方法,在执行过程中界面还可以操作,没有数据时没办法弹框报错
个人更新加载本地数据,先将数据从服务器上获取再加载,加载的方法可以封装,不用每次都写
jqgrid本地加载分页_jqGrid 分页相关推荐
- jqgrid本地加载分页_jqgrid无需分页即可加载大数据集
我想知道是否有更好的方法从服务器加载大型Json数据集. 我正在使用jqgrid作为loadonce:true.我需要一次加载大约1500条记录,而且我不使用分页选项.有没有更好的方法来实现这一目标? ...
- 1.2文字排版、颜色、表格、图像形状、Jumbotron、信息提示框、按钮、按钮组、徽章、加载效果、分页、列表组、卡片、下拉菜单、折叠
Bootstrap 5 默认设置 Bootstrap 5 默认的 font-size 为 16px, line-height 为 1.5. 此外,所有的 <p> 元素 margin-top ...
- 爬虫训练场基础铺垫,BT加载器,分页,列表组,卡片,下拉菜单一文掌握
爬虫训练场基础铺垫目录 Bootstrap 5 加载器 Bootstrap 5 分页组件 Bootstrap 5 列表组 Bootstrap 5 卡片 Bootstrap 5 下拉列表 本篇博客为大家 ...
- TensorFlow——本地加载fashion-mnist数据集
基本概念 Fashion MNIST:Fashion MNIST 旨在临时替代经典 MNIST 数据集,后者常被用作计算机视觉机器学习程序的"Hello, World".MNIST ...
- unitywebrequest本地加载_Unity AudioSource加载本地.mp3文件/UnityWebRequest
关键字: Unity AudioSource本地Mp3文件加载 UnityWebRequestMultimedia.GetAudioClip() 新版本api UnityWebRequest.Get ...
- combotree 可以异步加载吗_Unity AssetBundle 资源打包,加载,本地缓存方式,安卓,PC本地加载路径问题...
AssetBundle的定义和作用: 1,AssetBundle是一个压缩包包含模型.贴图.预制体.声音.甚至整个场景,可以在游戏运行的时候被加载. 2,AssetBundle自身保存着互相的依赖关系 ...
- 通过Console口本地加载系统程序
以下内容摘自目前正在全国热销.已加码重印的<Cisco/H3C交换机配置与管理完全手册>(第二版).新上市的姊妹篇<Cisco/H3C高级配置与管理技术手册>同步热销中.卓越网 ...
- Cesium本地加载地形(dem高程)数据
cesium本地加载dem数据,首先需要下载地区的高程数据,一般通常在地理空间数据云里面下载:http://www.gscloud.cn/ 这里一般可以下载到90m和30m精度的数据,当然也可以用自己 ...
- emoji-mart或者emoji-picker-react实现一个类似于微信聊天的在线发送表情,再加一个带源码的纯js实现,emoji图片本地加载
一. emoji-mart import './App.css'; import React, { Component } from 'react' import 'emoji-mart/css/em ...
最新文章
- maven多项目打包报错---子模块相互依赖打包时所遇到的问题:依赖的程序包找不到 package xxx does not exist
- vi和vim的基础使用
- haproxy小结(一)基础概念篇
- Netflix视频质量感知评价模型之路
- 琥珀项目:Java的未来揭晓
- yum install 失败
- php全局变量的关键字,php的static关键字和全局变量
- H3C ipv6与ipv4(6to4)隧道实验
- 考研数学预热(肖老师)-2019-12-21
- 老婆怀孕记录以及如何照顾老婆总结
- 生产排程php,生产管理中的生产排程排产流程建模
- leapftp 3.0.1使用教程,leapftp 3.0.1使用教程图解
- word2007如何批量删除文本框
- IPv6 to IPv4过渡技术——NAT64配置实例
- 云计算360度:微软专家纵论产业变革
- 世界五百强中国上榜公司首次超过美国;现代汽车发布电动汽车品牌IONIQ | 美通企业日报...
- 太秀了!那个在 GitHub 用文言文编程的小哥,竟从 28 万行唐诗中找出了对称矩阵...
- 皇帝内经:恬淡虚无,真气从之,精神内守,病安从来?
- 快速搭建koa2手脚架指南
- 1068 PTA 万花丛中一点绿(未完成)