Button ExtJS-来自控制器的自定义按钮调用函数?

Button ExtJS-来自控制器的自定义按钮调用函数?,button,extjs,Button,Extjs,我在视图中有一个按钮: items: [{ xtype: 'button', text: 'Click me!', handler: 'onClick' // <- call function from controller }] 在同一个js文件中,我有一个函数: function getLink() { // Doing something return '<div>Hi, <a href="...">Click me!

我在视图中有一个按钮:

items: [{
    xtype: 'button',
    text: 'Click me!',
    handler: 'onClick' // <- call function from controller
}]
在同一个js文件中,我有一个函数:

function getLink() {
    // Doing something
    return '<div>Hi, <a href="...">Click me!</a></div>';
}
函数getLink(){ //做某事 返回“你好”; } 我想在单击自定义按钮时调用“onClick”函数。我该怎么办


谢谢

您可以在
侦听器上使用
元素
委托
,例如:

{
            xtype: 'box',
            html: '<div>Hi, <a class="custom-btn">Click me!</a></div>',
            listeners: {
                click: {
                    element: 'el',
                    delegate: '.custom-btn',
                    fn: function() {
                        console.log('click!');
                    }
                }
            }
        }
{
xtype:'框',

html:“您好,

使用
afterrender在控制器中添加click事件处理程序

视图:

控制器:

var controller = this;

controller.control({
    // Selector for your link parent component
   'yourSelector': {
      afterrender: function(component) {
           component.down('#myLink').on('click', function() {
                controller.onClick();
           });
      }
   }
})
items: [{
    xtype: 'component',
    html: getLink(),
    itemId: 'myLink'
}]
var controller = this;

controller.control({
    // Selector for your link parent component
   'yourSelector': {
      afterrender: function(component) {
           component.down('#myLink').on('click', function() {
                controller.onClick();
           });
      }
   }
})
xtype: 'component',
autoEl:{
    tag: 'a',
    href: '',
    onClick: 'nameYouFunction'
}