ExtJS RowButton取消行选择

时间:2010-08-02 13:47:33

标签: javascript javascript-events extjs

我正在尝试将行按钮添加到网格面板。 Theese按钮应捕获click事件,执行其操作,并阻止选择行。

问题是更改行选择的行行为在按钮事件之前运行(就像行正在捕获它而不是等待事件冒泡)。

有没有办法在行选择之​​前添加一个行按钮来执行其操作,以便能够取消事件并因此取消任何其他行为?

提前谢谢。

2 个答案:

答案 0 :(得分:0)

你的意图是什么?

  1. 是否完全禁用此网格的行选择?
  2. 或者在单击行按钮时阻止行选择“失去焦点”/重置?
  3. 如果要从整个网格中禁用行选择(1),请将配置项disableSelection设置为true。

    如果您想在每次用户点击行按钮(2)时阻止重置行选择,您可以扩展Ext.grid.RowSelectionModel并覆盖initEvents方法以注册handleMouseDown到处理cellmousedown而不是rowmousedown(这将使您可以访问发起事件的columnIndex)GridPanel事件。然后在handleMouseDown方法中添加一些逻辑,以便在columnIndex等于您的行按钮的列索引时不更新行选择。换句话说,如果columnIndex 等于行按钮的列索引,则只执行原始的handleMouseDown逻辑。

    希望这有帮助。

答案 1 :(得分:0)

我没有看过列的想法,注册一个监听器取消行的选择非常简单。 (我宁愿排等待事件冒泡,但......)