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

标签 jquery 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。删除功能删除选定的行并将最新数据发送回网格。现在,如果我点击刷新,它仍然会删除。因为我的网址没有改变。此外,如果用户在刷新前选择了几行,则所选行的数据将被删除,因为 url 不会更改...

最佳答案

您应该直接使用 page: 1 而不是 postData: { page: '1' } 更改 page (请参阅 here )或仅使用 reloadGrid 的参数 [{page:1}] (请参阅 here )。

您没有编写足够的有关发送先前搜索中的一些附加参数的信息。如果您使用 loadonce:true 参数,则必须将 datatype 参数重置为其原始值(请参阅 herehere )。

关于jquery - jqgrid 在触发重新加载时不提交重置页面值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8493129/

相关文章:

jquery - Jqgrid - 未捕获的 RangeError : Maximum call stack size exceeded

java - jqgrid 将 Jqgrid 数据发布回 Action 类

jquery - JqG​​rid - 如何显示一列可选复选框?

php - 一键提交多表单

jquery - append 到动态 iframe- jQuery - 在 Firefox 中不起作用

jQuery 优化链接 "href"选择

jquery - 如何使用jqGrid查看静态json?

javascript - 带有特殊字符的JS元素标签

javascript - 通过javascript检测浏览器换行

jqgrid - 根据另一个 jqgrid 单元格的值在 jqgrid 单元格中设置值