2

在 jqGrid 中,我目前使用以下禁用行选择:

beforeSelectRow: function() {
     return false;
}

这适用于左键单击。但是,我注意到它没有触发beforeSelectRow事件处理程序并且当我右键单击时仍然选择行。这对我来说是个问题,因为我正在实现自定义上下文菜单。

我可以通过提问者自己承认的在这里发现的黑客来解决这个问题: Is it possible to Stop jqGrid row(s) from being selected and/or highlighting?

有没有其他不那么老套的方法来做到这一点?

谢谢!

更新

看来这只是子网格的问题。请参考这个例子。您会注意到左键单击不会选择行,但右键单击会。

(我采取了偷懒的方式,从 Oleg 提供的另一个问题的答案中偷了这个例子。)

4

1 回答 1

8

如果要禁用行选择,可以配置onSelectRow为 return false,这将阻止左键单击和右键单击。

onSelectRow: function() {
     return false;
}

要在右键单击时强制取消选择行:

onRightClickRow: function () {
    grid.jqGrid('resetSelection');
    return false;
}
于 2013-08-06T16:23:44.343 回答