jqgrid在触发重新加载时不提交重置页面值

我在按钮单击时触发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。 删除function删除所选行并将最新数据发送回网格。 现在,如果我点击刷新,它仍然会删除delete.html,因为我的url没有更改。 此外,如果用户在刷新之前选择了几行,则所选行数据将被删除,因为URL未更改…

您应该直接使用page: 1而不是postData: { page: '1' } (请参阅此处 )更改page ,或者只使用reloadGrid参数[{page:1}] (请参阅此处 )。

您没有写到有关发送一些其他参数的足够信息,这些参数是之前搜索的一部分。 如果使用loadonce:true参数,则必须将datatype参数重置为其原始值(请参阅此处或此处 )。