JQGRID-保持复选框选择状态-页面刷新/重定向/重新加载

JQGRID - maintain check box selection state - page refresh / redirect / reload

本文关键字:重定向 新加载 加载 刷新 复选框 选择 状态 -页 JQGRID-      更新时间:2023-09-26

H如何在页面刷新/重新加载/从JQGRID中的其他页面重定向后保持复选框选择。

我在aspx页面上工作。

能够使用以下代码在页面中维护复选框选择状态:

    gridComplete: function () {
     var currentPage = $(this).getGridParam('page').toString(); //retrieve any previously stored rows for this page and re-select them
     var retrieveSelectedRows = $(this).data(currentPage);
     if (retrieveSelectedRows) {
        $.each(retrieveSelectedRows, function (index, value) {
        $('#list').setSelection(value, false);
     });
    }
   },
   onPaging: function (a) {
     var pagerId = this.p.pager.substr(1); // ger paper id like "pager" 
     var pageValue = $('input.ui-pg-input', "#pg_" +           $.jgrid.jqID(pagerId)).val();
     var saveSelectedRows = $(this).getGridParam('selarrrow'); //Store any selected rows 
     $(this).data(pageValue.toString(), saveSelectedRows);
  }

但是,如何JQGrid页面刷新/重定向/重新加载中保持复选框选择状态?

此外,我在Window.OnLoad上尝试了以下代码,但不起作用

$("#list").trigger("reloadGrid", [{page: 1, current: true}]);

在jqGrid的旧版本中,在网格的多个页面上进行选择的实现非常棘手。我发布了答案,答案(试试演示(和相应的实现。

另一方面,在多个页面上选择多行的场景非常常见。因此,我在免费的jqGrid中实现了新功能。现在可以将新的multiPageSelection: true选项与multiselect: true组合使用。它以以下方式更改选择行为:

  • 可以在创建网格期间使用CCD_ 6阵列来直接预选一些行
  • 数组CCD_ 7可以保存来自其他页的行的id。更改页面时不会清除数组selarrrow。如果jqGrid的rowid在数组selarrrow中,则只选择行
  • 单击复选框列标题中的"全选"复选框,用本地data所有行ID填充selarrrow(来自所有页面(

演示演示了新功能。