6

我有一个启用了多选的 jqgrid。但是当我单击该行时,我不想选中该复选框。

使用代码片段

$("#yourGrid").jqGrid("setGridParam", {
    beforeSelectRow: function(rowId, e) {
       return $(e.target).is("input:checkbox");
    }
});

这篇文章中,我能够避免选择复选框,但现在我无法突出显示特定行。如何启用行的突出显示,同时禁用行单击时的多选。

4

1 回答 1

3

根据API ,网格上有一个属性应该为您执行此操作。

multiboxonly

此选项仅在多选选项设置为 true 时有效。当 multiselect 设置为 true 时,单击行上的任意位置会选择该行;当 multiboxonly 也设置为 true 时,只有在单击复选框时才会进行多选(雅虎风格)。单击任何其他行(假设未单击复选框)取消选择所有行并选择当前行。

有了这个,你不应该需要你的beforeSelectRow功能:

jQuery("#grid").jqGrid({
     . . .
     multiselect: true,
     multiboxonly: true
     . . .
});
于 2012-07-17T13:08:07.300 回答