我正在尝试让 jqGrid 表在重新加载时保持当前页。我找到了一些示例,但它们似乎对我不起作用。这是我正在尝试的:
grid.setGridParam({datatype:'json'}).trigger('reloadGrid',[{page:currentPage}]);
它会刷新,但始终重新显示第一页。
我正在尝试让 jqGrid 表在重新加载时保持当前页。我找到了一些示例,但它们似乎对我不起作用。这是我正在尝试的:
grid.setGridParam({datatype:'json'}).trigger('reloadGrid',[{page:currentPage}]);
(译者注:该代码针对IT技术方面)
grid.trigger("reloadGrid",[{current:true}]);
有趣的是,您也可以使用以下方法获取当前页面:
var currentPageVar = grid.getGridParam('page');
补充:
'grid' 的定义如下:
var grid = jQuery("#grid");
这指的是HTML中网格表的ID。
你可以简单地使用这段代码:
jQuery("#your_id").trigger("reloadGrid");
您可以使用
grid.trigger("reloadGrid", {page: currentPage, fromServer: true});
或者
grid.trigger("reloadGrid", {current: true, fromServer: true});
在使用free jqGrid分支时,重要的是同时使用forceClientSorting: true
和loadonce: true
。
你所描述的问题的原因是:只有当jqGrid进行本地分页时,它才能显示第二页。如果你只使用loadonce: true
,那么jqGrid将始终显示第一页。更甚者,服务器必须对从服务器返回的数据进行排序。选项forceClientSorting: true
告知free jqGrid在从服务器加载数据后,在本地执行过滤、排序和分页操作,然后再显示第一页(或其他页)。选项forceClientSorting: true
允许从外部源(无法控制其数据)加载相对较大的数据集,本地过滤数据(仅显示所需的数据子集),对结果进行排序并显示结果数据的页面。
你一定在寻找这段代码
$("#jsGrid").jsGrid("loadData");