Extjs4 tabpanel, отключить все дочерние элементы без их зацикливания - PullRequest
3 голосов
/ 11 января 2012

есть любой способ отключить все дочерние элементы на панели вкладок 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 ]

6 голосов
/ 11 января 2012
myPanel.items.each(function(c){c.disable();})

затем

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

для их повторного запуска.

Этот является циклом, но он не использует цикл for какЯ думаю, что вопрос должен был заявить.

0 голосов
/ 15 августа 2017

Попробуйте его:

// Create your own property for storing statu, 

config{
  allMyTabItemsEnabled = true;
}

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

bind: {
  disabled: '{!allMyTabItemsEnabled }'
}
0 голосов
/ 11 января 2012

Вы можете просто установить disabled: true в начальной конфигурации для каждой панели.Это то, что вы спрашивали?

...