如何通过子项的id在面板中查找特定子项是否存在。
假设我有一个父面板(id = parentPanel
)和一些作为其子项的面板。现在,我想要查找id为'childPanel09
'的面板是否是父面板的子项。
[可能不使用迭代]
注意:我正在使用ExtJs 3.4。
如何通过子项的id在面板中查找特定子项是否存在。
假设我有一个父面板(id = parentPanel
)和一些作为其子项的面板。现在,我想要查找id为'childPanel09
'的面板是否是父面板的子项。
[可能不使用迭代]
注意:我正在使用ExtJs 3.4。
如果你只想在parentPanel的直接子元素中搜索,可以使用getComponent方法:
var childPanel = Ext.getCmp('parentPanel').getComponent('childPanel09');
if (childPanel) {
alert('yes. child exists');
}
如果您想要在parentPanel下的任何层级中搜索,而不仅仅是直接子级别,请使用find:
var childPanel = Ext.getCmp('parentPanel').find('id', 'childPanel09')[0]; // [0] because find returns array
if (childPanel) {
alert('yes. child exists');
}
Ext.Container.find()
(来自被接受的答案)在 ExtJS 3.4 版本中是可以使用的(这也是问题所询问的版本)。然而,在 ExtJS 4.0 及以上版本中,find()
被 Ext.Container.query() 所取代,它们实现了相同的功能。请注意保留 HTML 标签。