请求jqGrid中的第0页

时间:2011-07-05 13:02:30

标签: jqgrid

是否可以从jqGrid中的page = 0开始?

我正在使用不受我控制的数据,当我请求第1页时,我实际上从服务器获取了第2页,因此我正在寻找实际请求第0页的方法。

据我所知,将jqGrid options中的页面参数设置为零无效。检查请求时,页面参数仍为1.

我还试图在初始化之后更改页面参数。这会将页面设置为1:

grid.setGridParam({page:0}).trigger('reloadGrid');

另一方面,这在请求中将页面成功设置为5:

grid.setGridParam({page:5}).trigger('reloadGrid');

我想有一些检查请求第0页,但有关如何解决此问题的任何想法?

2 个答案:

答案 0 :(得分:4)

如果我理解您的问题是正确的,您可以使用serializeGridData中的jsonReader defined as function事件处理程序和page属性来解决问题。

我没有测试你在下面找到的内容,但我希望代码或一些修改过的代码都能正常工作:

serializeGridData: function(postData) {
    if (typeof(ts.p.postData.page) === "number") {
        postData.page--; // decrease the value of page before sending to the server
    }
    return postData;
},
jsonReader: {
    page: function (obj) {
        return obj.page + 1; // increase the value of page returned from the server
    }
}

答案 1 :(得分:1)

它应该是这样的:

grid.trigger("reloadGrid",[{page:1}]);

请参阅Oleg对类似question的回复。

<强>更新

jqGrid寻呼机从1开始,方法reloadGrid checks如果页面是&lt; 0,所以看起来你可以做的并不多。