【发布时间】:2010-11-30 21:11:03
【问题描述】:
我有一个 EditorGridPanel,其中一列中有一个 ComboBox。
在该 ComboBox 的“选择”事件侦听器中,我想知道它位于哪个网格行(不是 ComboBox 行)。
原因是我想在每次选择项目时更新网格中的不同列。
我想我可能遗漏了一些明显的东西。
感谢您的帮助。
【问题讨论】:
标签: extjs combobox grid roweditor
我有一个 EditorGridPanel,其中一列中有一个 ComboBox。
在该 ComboBox 的“选择”事件侦听器中,我想知道它位于哪个网格行(不是 ComboBox 行)。
原因是我想在每次选择项目时更新网格中的不同列。
我想我可能遗漏了一些明显的东西。
感谢您的帮助。
【问题讨论】:
标签: extjs combobox grid roweditor
从 4.1 开始,最好改用网格的 edit 事件。您在包含已编辑记录的事件中被传递。
http://docs.sencha.com/ext-js/4-1/#!/api/Ext.grid.Panel-event-edit
【讨论】:
record 属性,即有问题的记录。为什么这对你不起作用?
好的,对于想要尝试这个的其他人,我发现了一个似乎是 EditorGridPanel 的未记录属性:activeEditor。
此属性包含一个“记录”属性,它是对正在编辑的组合框(或任何实际内容)的当前记录的引用。
它可能有点弱(因为它没有记录),但似乎有效。
在 ExtJs 4.2 中,要使用的网格(用于单元格编辑插件)的属性是:
grid.editingPlugin.getActiveRecord()
editingPlugin 的属性似乎仍然没有记录,而 getActiveRecord() 是。
【讨论】:
此外,在 ExtJS 6 中,您可以使用未记录的属性 context,其中包含 record。
grid.editingPlugin.context.record
【讨论】: