JQGrid 单元格编辑不允许选择行



我正在尝试为我的 JQGrid 中的几列实现单元格编辑功能,使用此功能可以完美地发生 'cellEdit': true, 'cellsubmit': 'remote',编辑网址 我正在动态设置。

但是当我在代码中使用这些行时,我无法在单击单元格时选择该行。我正在使用 multiselect: true, multiboxonly: true,

这违反了我的代码。请帮忙。如何同时获得单元格编辑和行选择。

似乎不能同时使用multiselect: true单元格编辑。如果您确实需要beforeSelectRow则必须使用回调来解决问题。

该演示演示了解决方案。它使用以下beforeSelectRow实现:

beforeSelectRow: function (rowid, e) {
    var $self = $(this), iCol, cm,
        $td = $(e.target).closest("tr.jqgrow>td"),
        $tr = $td.closest("tr.jqgrow"),
        p = $self.jqGrid("getGridParam");
    if ($(e.target).is("input[type=checkbox]") && $td.length > 0) {
       iCol = $.jgrid.getCellIndex($td[0]);
       cm = p.colModel[iCol];
       if (cm != null && cm.name === "cb") {
           // multiselect checkbox is clicked
           $self.jqGrid("setSelection", $tr.attr("id"), true ,e);
       }
    }
    return false;
}

粘贴奥列格评论中的原始解决方案:

编辑jquery.jqGrid.src.js并添加返回;

        if(ts.p.cellEdit === true) {
            if(ts.p.multiselect && scb && cSel){
                $(ts).jqGrid("setSelection", ri ,true,e);
            } else if (td.length > 0) {
                ri = ptr[0].rowIndex;
                try {$(ts).jqGrid("editCell",ri,ci,true);} catch (_) {}
            }
            return; // <---------------------------------------
        }

最新更新