【问题标题】:jqGrid Set Selected RowsjqGrid 设置选定的行
【发布时间】:2011-11-29 12:00:11
【问题描述】:

我有一个带有multiselect true 的 jqgrid,我想设置一些行。(我知道行 ID。)我该怎么做?

我的意思是与

相反
$("#myTable").jqGrid('getGridParam', 'selarrrow');

就像:

$("#myTable").jqGrid('setGridParam', 'selarrrow', rowArray);

【问题讨论】:

    标签: jqgrid


    【解决方案1】:

    您必须遍历rowArray 数组并为rowArray 中的每个rowid 调用setSelection 方法:

    var i, count, $grid = $("#myTable");
    for (i = 0, count = rowArray.length; i < count; i += 1) {
        $grid.jqGrid('setSelection', rowArray[i], false);
    }
    

    【讨论】:

      【解决方案2】:
      $.each(rowsToSelect, function(_, rowId) {
          $grid.setSelection(rowId, false);
      });
      

      没有太大区别。只是看起来更整洁:)

      【讨论】:

      • 或任何最近的浏览器:rowsToSelect.forEach(function(rowId){$grid.setSelection(rowId, false);});
      【解决方案3】:

      (令人惊讶的是,即使是现在,在 2014 年,jqGrid 在分页时也不会保留复选框..)

      这是我在移动到新页面后需要使用 jqGrid 4.4.5 来设置复选框的代码:

      var idsOfSelectedRows = [];   //  list of RowIDs for rows which have been ticked
      
      $("#tblContracts").jqGrid({
            ...   
            colModel: [
                { name: 'AddContract', width: 50, align: "center", editable: true, edittype: 'checkbox', editoptions: { value: "True:False" }, formatter: "checkbox", formatoptions: { disabled: false } },
                { name: "ContractName", search: true, width: 80, align: "center" }
            ],
            loadComplete: function () {
                for (i = 0; i < idsOfSelectedRows.length; i++) {
                    $(this).setCell(idsOfSelectedRows[i], 'AddContract', true);
                }
            },
      

      在开发过程中,我在“for”循环中放置了一个“警报”。我发现使用“setSelection”只需遍历我的 RowID 列表,选择行(因此它会突出显示),然后转到下一个,而是选择该行。

      它从来没有勾选任何复选框。

      请注意,我的“setCell”函数包括我有一个复选框的 jqGrid 列的 name

      如果您剪切'n'粘贴此代码,请确保更改此行以反映您的 jqGrid 复选框列的名称。

      【讨论】:

        猜你喜欢
        • 2016-09-20
        • 2011-03-13
        • 1970-01-01
        • 2011-12-28
        • 2011-11-04
        • 2014-03-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多