我在按钮单击时触发 jqgrid 重新加载,并将页面值重置为“1”以使分页正常工作。但是 jqgrid 提交网格中存在的值(如果在第二页上它发送值“2”),并且它还发送一些附加参数,这些参数是先前搜索的一部分。请问我该如何避免这种情况?
$('#delete').click(function() {
var rowIds = msgGrid.jqGrid('getGridParam','selarrrow');
$('#grid').setGridParam({url:'delete.html?rowIds=' + rowIds,
page: '1'
});
$('#userGrid').trigger("reloadGrid");
});
jQuery(function() {
jQuery("#grid").jqGrid({
url:'page.html',
datatype: 'json',
mtype: 'POST',
.....
postData: {
totalRecords: function() { return $('#grid').getGridParam("records"); }
},
rowNum: 25,
.....
});
});
当网格首次加载时,我的 url 是 page.html,但是当用户选择某些行并单击删除时,我将 url 更改为包含所选行的 delete.html。删除功能删除选定的行并将最新数据发送回网格。现在,如果我点击刷新,它仍然会删除。因为我的网址没有改变。此外,如果用户在刷新前选择了几行,则所选行的数据将被删除,因为 url 不会更改...
最佳答案
您应该直接使用 page: 1
而不是 postData: { page: '1' }
更改 page
(请参阅 here )或仅使用 reloadGrid
的参数 [{page:1}]
(请参阅 here )。
您没有编写足够的有关发送先前搜索中的一些附加参数的信息。如果您使用 loadonce:true
参数,则必须将 datatype
参数重置为其原始值(请参阅 here 或 here )。
关于jquery - jqgrid 在触发重新加载时不提交重置页面值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8493129/