首先, 注意了: GridManager 表格分页是须要 后端支撑 的.
{ "data":[ // 分页必须存在的属性, 属性名可经过配置项dataKey进行变动 { "name": "baukh", "age": "28", "createDate": "2015-03-12", "info": "野生前端程序", "operation": "修改" }, { "name": "baukh", "age": "28", "createDate": "2015-03-12", "info": "野生前端程序", "operation": "修改" } ], "totals": 8 // 分页必须存在的属性, 属性名可经过配置项totalsKey进行变动 }
document.querySelector('table').GM('init', { supportAjaxPage: true, // 启用分页 requestHandler: function(request){ request.newParams = '这个参数是经过 requestHandler 函数新增的'; return request; }, // 其它配置项... });
如: 一级数据中的 data 与 totals, 能够使用 dataKey 和 totalsKey 进行调整。 javascript
后端返回数据为:html
{ "list":[ // GridManager 指望返回的是 data, 而这里返回了 list { "name": "baukh", "age": "28", "createDate": "2015-03-12", "info": "野生前端程序", "operation": "修改" }, { "name": "baukh", "age": "28", "createDate": "2015-03-12", "info": "野生前端程序", "operation": "修改" } ], "number": 8 // GridManager 指望返回的是 totals, 而这里返回了 number }
解决方式:前端
document.querySelector('table').GM('init', { supportAjaxPage: true, // 启用分页 dataKey: 'list', // 指定数组 key 为 list totalsKey: 'number', // 指定总数 key 为 number requestHandler: function(request){ request.newParams = '这个参数是经过 requestHandler 函数新增的'; return request; }, // 其它配置项... });
如数组中的 createDate, 指望返回的是时间戳, 而返回的为字符串。 这时能够经过初始化配置 responseHandler 对数据进行重组。
后端返回数据为:java
{ "list":[ // GridManager 指望返回的是 data, 而这里返回了 list { "name": "baukh", "age": "28", "createDate": "2015-03-12", // 返回的是字符串 "info": "野生前端程序", "operation": "修改" }, { "name": "baukh", "age": "28", "createDate": "2015-03-12", // 返回的是字符串 "info": "野生前端程序", "operation": "修改" } ], "number": 8 // GridManager 指望返回的是 totals, 而这里返回了 number }
前端指望返回的是:git
{ "data":[ { "name": "baukh", "age": "28", "createDate": 1426118400000, // 指望返回时间戳 "info": "野生前端程序", "operation": "修改" }, { "name": "baukh", "age": "28", "createDate": 1426118400000, // 指望返回时间戳 "info": "野生前端程序", "operation": "修改" } ], "totals": 8 }
解决方式:github
document.querySelector('table').GM('init', { supportAjaxPage: true, // 启用分页 dataKey: 'list', // 指定数组 key 为 list totalsKey: 'number', // 指定总数 key 为 number responseHandler: function(response){ // 将返回数据中的 createDate 修改成 时间戳 response.list = response.data.map(function(item){ item.createDate = new Date(item.createDate).getTime(); return item; }); return response; }, // 其它配置项... });
更多API,请点击API进入后端
欢迎star githubapi