ExtJS的。隐藏容器中的所有组件

时间:2013-06-26 07:35:27

标签: javascript extjs extjs3

我有一个窗口,我在其中渲染了许多组件,如面板等。

有没有办法可以隐藏窗口中包含的所有组件而不必单独隐藏它们?像,

Ext.getComponent('myWindow').hideAllComponents();

我正在使用extjs 3.4。

3 个答案:

答案 0 :(得分:2)

尝试为容器设置样式

Ext.get('myWindow').setStyle('display','none');

答案 1 :(得分:2)

如果我理解你的话,你不想隐藏你的窗户,而是隐藏窗口中的元素。所以可以这样做:

// get window, get element, get all direct children with css selector '*'
var children = Ext.get('myWindow').getEl().down('*')

// hide them all
Ext.each(children,function(child){child.hide();});

答案 2 :(得分:1)

假设myWindow是对您窗口的引用,您可以使用:

Ext.each(myWindow.items.items, function(cmp) { cmp.hide(); });

其他答案提到Ext.get但是它检索DOM元素,而不是组件。

另请参阅:ExtJS hide all child components