jqGrid free multiPageSelect MULTIPSELECT clear selarrrow

jqGrid free multiPageSelect MULTIPSELECT clear selarrrow,jqgrid,Jqgrid,我有一个带有multiselect和multiPageSelection的jqgrid。我的用户可以在ajax页面调用之间选择不同页面上的不同行。我在寻呼机中添加了一个自定义按钮和方法,以清除所选行,而不考虑页面: $("#grid").navButtonAdd('#pager', { caption: "Clear", title: "Clear Selection", buttonicon: "ui-icon-circle-cl

我有一个带有multiselect和multiPageSelection的jqgrid。我的用户可以在ajax页面调用之间选择不同页面上的不同行。我在寻呼机中添加了一个自定义按钮和方法,以清除所选行,而不考虑页面:

        $("#grid").navButtonAdd('#pager', {
        caption: "Clear",
        title: "Clear Selection",
        buttonicon: "ui-icon-circle-close",
        onClickButton: function() {

            $("#grid").setGridParam({ multiPageSelection: false });
            $("#grid").resetSelection();
            $("#grid").setGridParam({ multiPageSelection: true});
        },      
        position: "first"
    });
您可以看到,我必须将multiPageSelection设置为false,重置选择,然后将multiPageSelection设置为true,以使其正常工作

我试过了

$("#grid").resetSelection();
然后是其中一个:

$("#grid").setGridParam({ selarrrow: ""});
$("#grid").setGridParam({ selarrrow: []});
$("#grid").setGridParam({ selarrrow: {}});
$("#grid").setGridParam({ selarrrow: null});
他们都没有工作。要么它们生成了错误,要么该命令被忽略,selarrrow仍然包含值

resetSelection仅在multiPageSelection为true时清除当前页上的值


是否有jqgrid命令来重置选择,而不考虑multiPageSelect?

如果我正确理解您的问题,那么您只是使用错误的方法重置数组参数
selarrrow
(或其他参数,如
数据
)。最简单的方法是使用
getGridParam
而不是
setGridParam
。调用
getGridParam
而无需附加参数,将返回对jqGrid所有内部参数的引用,您将很容易替换任何数组参数:

var $grid = $("#grid"), p = $grid.jqGrid("getGridParam"});
p.selarrrow = [];
或者,您可以使用

$("#grid").jqGrid("setGridParam", { selarrrow: [] }, true);

使用第二个参数
true
。最后一种方法更具可读性,但是
setGridParam
的任何用法都比
getGridParam
的用法慢,就是这样!实际上我不得不做一个$(“#网格”).resetSelection();首先,然后将selarrrow设置为空。那么…你在哪里找到的或者你怎么知道的?我找不到免费版本的文档。在setgridparam中,true的作用是什么?@Chris:setgridparam的代码较短,
getGridParam的代码较短(参见[此处](fa square))。我发现这是因为我实现了
multiPageSelection
功能。:-)有关免费jqGrid的一些信息,请参见。如果您知道(如果您使用)TypeScript,那么大部分可能是完整的文档。您可以看到它有2000多行。文件需要多长时间?对不起。我指的是“真”参数。但是,我查错了文件——jqgrid的旧版本。新版本具有“覆盖”参数。再次感谢你,奥列格。我很感激。