这两天一直在搞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 分页相关推荐

  1. jqgrid本地加载分页_jqgrid无需分页即可加载大数据集

    我想知道是否有更好的方法从服务器加载大型Json数据集. 我正在使用jqgrid作为loadonce:true.我需要一次加载大约1500条记录,而且我不使用分页选项.有没有更好的方法来实现这一目标? ...

  2. 1.2文字排版、颜色、表格、图像形状、Jumbotron、信息提示框、按钮、按钮组、徽章、加载效果、分页、列表组、卡片、下拉菜单、折叠

    Bootstrap 5 默认设置 Bootstrap 5 默认的 font-size 为 16px, line-height 为 1.5. 此外,所有的 <p> 元素 margin-top ...

  3. 爬虫训练场基础铺垫,BT加载器,分页,列表组,卡片,下拉菜单一文掌握

    爬虫训练场基础铺垫目录 Bootstrap 5 加载器 Bootstrap 5 分页组件 Bootstrap 5 列表组 Bootstrap 5 卡片 Bootstrap 5 下拉列表 本篇博客为大家 ...

  4. TensorFlow——本地加载fashion-mnist数据集

    基本概念 Fashion MNIST:Fashion MNIST 旨在临时替代经典 MNIST 数据集,后者常被用作计算机视觉机器学习程序的"Hello, World".MNIST ...

  5. unitywebrequest本地加载_Unity AudioSource加载本地.mp3文件/UnityWebRequest

    关键字:  Unity AudioSource本地Mp3文件加载 UnityWebRequestMultimedia.GetAudioClip() 新版本api UnityWebRequest.Get ...

  6. combotree 可以异步加载吗_Unity AssetBundle 资源打包,加载,本地缓存方式,安卓,PC本地加载路径问题...

    AssetBundle的定义和作用: 1,AssetBundle是一个压缩包包含模型.贴图.预制体.声音.甚至整个场景,可以在游戏运行的时候被加载. 2,AssetBundle自身保存着互相的依赖关系 ...

  7. 通过Console口本地加载系统程序

    以下内容摘自目前正在全国热销.已加码重印的<Cisco/H3C交换机配置与管理完全手册>(第二版).新上市的姊妹篇<Cisco/H3C高级配置与管理技术手册>同步热销中.卓越网 ...

  8. Cesium本地加载地形(dem高程)数据

    cesium本地加载dem数据,首先需要下载地区的高程数据,一般通常在地理空间数据云里面下载:http://www.gscloud.cn/ 这里一般可以下载到90m和30m精度的数据,当然也可以用自己 ...

  9. emoji-mart或者emoji-picker-react实现一个类似于微信聊天的在线发送表情,再加一个带源码的纯js实现,emoji图片本地加载

    一. emoji-mart import './App.css'; import React, { Component } from 'react' import 'emoji-mart/css/em ...

最新文章

  1. maven多项目打包报错---子模块相互依赖打包时所遇到的问题:依赖的程序包找不到 package xxx does not exist
  2. vi和vim的基础使用
  3. haproxy小结(一)基础概念篇
  4. Netflix视频质量感知评价模型之路
  5. 琥珀项目:Java的未来揭晓
  6. yum install 失败
  7. php全局变量的关键字,php的static关键字和全局变量
  8. H3C ipv6与ipv4(6to4)隧道实验
  9. 考研数学预热(肖老师)-2019-12-21
  10. 老婆怀孕记录以及如何照顾老婆总结
  11. 生产排程php,生产管理中的生产排程排产流程建模
  12. leapftp 3.0.1使用教程,leapftp 3.0.1使用教程图解
  13. word2007如何批量删除文本框
  14. IPv6 to IPv4过渡技术——NAT64配置实例
  15. 云计算360度:微软专家纵论产业变革
  16. 世界五百强中国上榜公司首次超过美国;现代汽车发布电动汽车品牌IONIQ | 美通企业日报...
  17. 太秀了!那个在 GitHub 用文言文编程的小哥,竟从 28 万行唐诗中找出了对称矩阵...
  18. 皇帝内经:恬淡虚无,真气从之,精神内守,病安从来?
  19. 快速搭建koa2手脚架指南
  20. 1068 PTA 万花丛中一点绿(未完成)

热门文章

  1. JavaScript解析JSON格式方法
  2. Distractor-aware Siamese
  3. 【资源分享】免费PPT模板网址
  4. Qt + CURL + mimetic 发送邮件(带附件)
  5. CentOS最新8.5.2111安装
  6. java-php-python-ssm智慧书籍的网站计算机毕业设计
  7. 「Redis数据结构」哈希对象(Hash)
  8. UTONMOS:打造你的梦想,开启元宇宙无限彩排的游戏时代
  9. Qt 多线程基础及线程使用方式
  10. C++ 输入数据方法总结