我正在使用 jqgrid 3.8.2,
我正在尝试使用下面的代码从服务器端重新加载数据并显示特定页面,例如当前页面。 $("#mygrid").setGridParam({datatype:json}).trigger("reloadGrid",[{page:5}]);
网格可以正确从服务器加载数据,但始终显示第一页而不是第 5 页。
有人可以帮我吗?
问候
西蒙
我想你使用loadonce: true
范围。从您设置的服务器重新加载数据datatype
: 到 'json' (我希望你使用setGridParam({datatype:'json'})
并不是setGridParam({datatype:json})
就像问题的代码片段中一样)。数据将从服务器加载后本地数据的第一页将显示。
要解决该问题,您必须在以下时间重新加载网格一次loadComplete
,但现在您应该重新加载本地网格。为了没有重新加载循环并允许本地寻呼,您应该验证当前是否datatype
是“json”:
var myGrid = $("#mygrid"), currentPage = 1;
...
myGrid.jqGrid({
// all grid parameters and additionally the following
loadComplete: function() {
if (this.p.datatype === 'json' && currentPage !== 1) {
setTimeout(function() {
myGrid.trigger("reloadGrid",[{page:currentPage}]);
}, 50);
}
}
});
....
currentPage = 5;
myGrid.setGridParam({datatype:'json'}).trigger("reloadGrid",[{page:currentPage}]);
查看演示here http://www.ok-soft-gmbh.com/jqGrid/YunFeng.htm.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)