如何获取Ext.FormPanel中的按钮?

时间:2012-02-28 16:13:41

标签: extjs

我看不到从这样定义的Ext.FormPanel中获取按钮:

Ext.apply({
    ....
    buttons: [
        {
            text: 'Save',
            itemId: 'btnSave'
        }
    ]
});

我在FormPanel实例上尝试了getComponent,但是没有返回btnSave。 btnSave是否与表单的其余部分不同?

3 个答案:

答案 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'); 

工具栏和项目不在您的代码中,但它们隐含在按钮中:[{}]