我正在尝试为我的 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; // <---------------------------------------
}