extjs 4.2.1 - 工具栏并将点击事件委托给按钮

时间:2014-01-12 02:35:29

标签: javascript html css button extjs

我在Google上搜索过但没有找到任何问题的答案...

我有一个工具栏里面有多个按钮。我如何将click事件委托给工具栏中的每个按钮,而不必编写如下内容:

{
    xtype: 'button',
    text: 'Click me',
    handler: function() {
        // do something...
    }
}
每个按钮

1 个答案:

答案 0 :(得分:3)

根据你的意见,我会做这样的事情:

Ext.define('MyContainer', {
    extend: 'Ext.container.Container',

    initComponent: function() {
        var handler = this.handleButton;
        this.defaultType = 'button';
        this.items = [{
            text: 'A',
            key: 'itemA',
            handler: handler
        }, {
            text: 'B',
            key: 'itemB',
            handler: handler
        }, {
            text: 'C',
            key: 'itemC',
            handler: handler
        }, {
            text: 'D',
            key: 'itemD',
            handler: handler
        }];
        this.callParent();
    },

    handleButton: function(btn) {
        console.log(btn.key);
        // do something with key
    }
});

Ext.onReady(function() {

    new MyContainer({
        renderTo: document.body
    });

});