TypeError:b为null extjs4

时间:2013-03-19 10:18:58

标签: extjs null grid store

我的应用有一个网格,双击一个记录就会出现一个窗口。在这个窗口中有两个选项卡,在第一个我打印一个表中包含所选行的所有信息,在第二个选项卡中我有另一个网格链接到另一个商店,显示一种“记录器”来查看活动的选定的行。我的问题是,当我双击一行时,窗口出现,活动存储完全加载。但是,如果我关闭窗口然后双击另一行,则“活动”选项卡为空,错误为TypeError: b is null

编辑:解决了,我只创建了一次网格,每次创建窗口时都要创建网格

1 个答案:

答案 0 :(得分:0)

这是我的解决方案:

定义活动网格

Ext.define('Beautyeco.actGrid', {
                extend: 'Ext.grid.Panel',

                title: '',
                minHeight: 200,
                maxHeight: 300,
                store: actStore,
                id: 'actGrid',

                initComponent: function() {
                    this.columns = [ //columns ]
                    this.callParent(arguments);
                }
            });

双击监听器

itemdblclick: function(tablepanel, record, item, index, e, options){
                        // create here the grid
                        var activitiesGrid = Ext.create('Beautyeco.actGrid');

                        var editWindow = new Ext.Window({
                            title: 'Modifica informazioni',
                            width: 600,
                            minHeight: 400,
                            items: [
                                {
                                    xtype: 'tabpanel',
                                    activeTab: 0,
                                    items: [
                                        {
                                            title: 'Info generali',
                                            id: 'infoTab',
                                            width: 600,
                                            tpl: [ //tpl ]
                                        },
                                        {
                                            title: 'Attività',
                                            width: 600,
                                            id: 'actTab',
                                            items: [activitiesGrid] // add the grid
                                         }
                                      ]
                                  }
                              ]
                          });
}