这不是问题,而是我脑海中浮现的一个问题。当用户双击Ext.panel.Grid中的记录/单元格时(取决于某些条件),我和我的朋友一起尝试禁用RowEditing。我正在研究API,并试图找到出路。然而,与此同时,当我用Google搜索Stackoverflow上的一个答案(是的,这里)建议使用以下事件:
grid.on('beforeedit', function(editor, e) {
if (e.colIdx === 0 && e.record.get('status') == 4)
return false;
});
有效!!!但是当我回到ExtJS 4.2.0 API(这就是我们正在使用的)时,我没有在Ext.grid.Panel或它的父Ext.panel.Table上找到'beforeedit'事件。 RowEditing插件有beforeedit事件,但不是Grid。但是,旧版本4.1.0具有Ext.panel.Grid(http://docs.sencha.com/extjs/4.1.0/#!/api/Ext.grid.Panel-event-beforeedit)的事件,实际上是自从4.1.0开始引入Ext.panel.Grid之前。
所以,这只是困扰我的问题 - 事件是否很快被弃用并且仍在工作?或者4.2.0的API错过了吗?或者在该版本的API中未定义的事件仍在使用的原因是什么!!!这将有助于我理解API是如何记录的,以及我是否应该依赖旧版本来获得更好的文档或其他任何内容。
答案 0 :(得分:2)
beforeedit事件不在Grid的文档中,因为它不是Grid上的事件。这是Grid Editing Plugin上的一个事件。
网格编辑插件中的事件在运行时对网格mixed-in,因此如果使用网格编辑插件,那么beforeedit事件将显示在网格上。
不确定为什么他们改变了4.1和4.2之间的文档,但差异并不重要,因为行为是相同的。