ExtJs编辑器网格面板的问题

时间:2011-08-29 12:46:33

标签: javascript extjs extjs3

我有一个绑定到商店的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事件被触发并且添加了空行,焦点就不会移动到第一行,即第二行仍然处于编辑模式。我怎么解决这个问题?

1 个答案:

答案 0 :(得分:0)

我已经使用了您的代码并创建了this demo。正如您所看到的,一切都按预期工作。您确定已向我们提供了非工作代码吗?