我从webservice收到的Json数据是
{"meta": {"limit": 20, "next": "/api/un_bn_in/?offset=20&limit=20&format=json", "offset": 0, "previous": null, "total_count": 439603}, "objects": [{"id": 1, "phrase": "this is bengali test", "resource_uri": "/api/un_bn_in/1/", "verified_by_admin": true, "verified_by_usr": true}] }
要转到下一页,网址是“/ api / un_bn_in /?offset = 20& limit = 20& format = json”
我的jsonreader功能如下: -
jsonReader{
id : "id",
repeatitems: false,
root: function (obj) { return obj.objects; },
records: function (obj) {
return 20; },
total: function (obj) { return obj.meta.total_count;
}
这里真正的问题是当我按下jqgrid生成的下一页按钮url时 ?/ API / un_bn_in /格式= JSON&安培; _search =假安培; ND = 1383576507420&安培;行数= 20安培;页= 1&安培; SIDX = ID&安培; SORD = ASC
但我想要“/ api / un_bn_in /?offset = 20& limit = 20& format = json”这个网址要生成,以便我可以获得下一页
欢迎任何有关此问题的帮助
答案 0 :(得分:1)
您可以使用jqGrid的prmNames选项重命名标准jqGrid选项或删除其他选项。例如选项
prmNames: {nd: null, search: null, sort: null, order: null, rows: "limit" }
将删除一些您不需要的参数,并将rows
选项重命名为limit
。您将获得/api/un_bn_in/?format=json&limit=20&page=2
之类的网址。最后一步是将limit
和page
选项替换为/api/un_bn_in/?format=json0&limit=20&offset=20
。在这种情况下,您可以另外使用serializeGridData
。结果选项可以是以下
url: "/api/un_bn_in/?format=json",
prmNames: {nd: null, search: null, sort: null, order: null, rows: "limit" },
serializeGridData: (postData) {
return {
limit: postData.limit,
offset: (parseInt(postData.page, 10) - 1) * postData.limit
};
}