我有一个绑定到商店的extjs编辑器网格面板(3.3.1)。新记录通过顶部的空行添加到网格中。在商店的负载上,我在网格的顶部添加一个空行。当用户添加新值并且焦点丢失时,我正在添加另一个空行。
AV.ClassifiedCategories = Ext.extend(Ext.grid.EditorGridPanel, {
....
initComponent: function(){
this.store = this.initialConfig.store;
//add an empty row at top
this.store.on('load', this.addCategory, this);
Ext.apply(this,
{
clicksToEdit: 1,
listeners:
{
afteredit : function(e){
this.addCategory();
},
scope: this
}
});
},
//adds an empty row and insert a record to store
addCategory: function(){
var Category = this.getStore().recordType;
var cat = new Category({ cat_id: null, cat_name: "" });
this.stopEditing();
this.store.insert(0, cat);
this.startEditing(0, 0);
return cat;
},
...
});
这里面临的问题是,一旦afteredit事件被触发并且添加了空行,焦点就不会移动到第一行,即第二行仍然处于编辑模式。我怎么解决这个问题?