我看不到从这样定义的Ext.FormPanel中获取按钮:
Ext.apply({
....
buttons: [
{
text: 'Save',
itemId: 'btnSave'
}
]
});
我在FormPanel实例上尝试了getComponent,但是没有返回btnSave。 btnSave是否与表单的其余部分不同?
答案 0 :(得分:2)
您应该能够使用容器的“查询”方法来检索后代组件:
panel.query( “#btnSave”)
答案 1 :(得分:2)
您无法使用getComponent()
,因为这些按钮不属于items
配置。
getComponent() - “检查此容器的items属性并获取此容器的直接子组件。”
您可以给按钮id
然后使用Ext.getCmp()
或使用@limscoder显示的组件查询。
答案 2 :(得分:0)
在Extjs 4.2中,我的窗口底部有按钮,与你的代码类似 这对我有用:
var bbar = this.getDockedItems('toolbar[dock="bottom"]')[0];
var button = bbar.getComponent('btnSave');
工具栏和项目不在您的代码中,但它们隐含在按钮中:[{}]