Extjs4 tabpanel,禁用所有子项而不循环它们

时间:2012-01-11 08:53:03

标签: extjs tabs extjs4 tabpanel

是否有任何方法可以在Extjs4选项卡面板上禁用所有子项,而无需循环它们。

我的代码:

var myPanel = new Ext.TabPanel({
    region: 'east',
    title: 'my panel title',
    width: 200,
    id: 'my-panel',
    split: true,
    collapsible: true,
    collapsed: true,
    floatable: true,
    xtype: 'tabpanel',
    items: [
        Ext.create('Ext.panel.Panel', {
        id: 'my-detail-panel',
        title: 'My Info',
        autoScroll: true,
        file: false,
        type: 'vbox',
        align: 'stretch',
        tpl: myDetailsTpl
    }),
        Ext.create('Ext.panel.Panel', {
        id: 'my-more-detail-panel',
        title: 'My more info',
        autoScroll: true,
        file: false,
        type: 'vbox',
        align: 'stretch',
        tpl: myMoreDetailsTpl
    })
            ]
});

我需要禁用myPanel的所有子项,但仍需要'myPanel'保持状态为启用。

3 个答案:

答案 0 :(得分:6)

myPanel.items.each(function(c){c.disable();})

然后

myPanel.items.each(function(c){c.enable();})

再次将它们重新启动。

这个循环,但它没有使用“for循环”,因为我认为这个问题是为了陈述。

答案 1 :(得分:0)

您可以在每个面板的初始配置中设置disabled:true。这就是你问的问题吗?

答案 2 :(得分:0)

试试他的:

// Create your own property for storing statu, 

config{
  allMyTabItemsEnabled = true;
}

// Then on all the items you want to disable/enable, add:

bind: {
  disabled: '{!allMyTabItemsEnabled }'
}