首先, 注意了: GridManager 表格分頁是須要 後端支撐 的.javascript
由前端發送包含分頁信息的參數, 這是由 GridManager 自動實現的。 該參數包含如下信息{cPage: 當前頁, pSize: 每頁顯示條數}html
後端解析請求, 並根據分頁參數返回當前頁的數據, 數據格式以下:前端
{
"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 進行調整。java
後端返回數據爲:git
{
"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
}
複製代碼
解決方式:github
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 對數據進行重組。後端
後端返回數據爲:api
{
"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
}
複製代碼
前端指望返回的是:數組
{
"data":[
{
"name": "baukh",
"age": "28",
"createDate": 1426118400000, // 指望返回時間戳
"info": "野生前端程序",
"operation": "修改"
},
{
"name": "baukh",
"age": "28",
"createDate": 1426118400000, // 指望返回時間戳
"info": "野生前端程序",
"operation": "修改"
}
],
"totals": 8
}
複製代碼
解決方式:函數
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進入