如何将点击事件添加到 Xtemplate extjs 4.2 的内部元素?

how to add click event to inner element of Xtemplate extjs 4.2?

我想给Xtemplate 的内部元素添加点击事件,下面是我的代码。 提前致谢。

var ruleTemplate = new Ext.XTemplate(
        '<tpl for=".">',
            '<div class="rule-item" id={key}>',
                '{key}',
                '<tpl if="value == \'true\'">',
                '<i class="add">&nbsp;</i>',
                '<tpl else>',
                '<i class="group">&nbsp;</i>',
                '</tpl>',
            '</div>',
        '</tpl>'
);


var ruleView =  Ext.create('Ext.view.View', {
    store: rulesStore,
    tpl:ruleTemplate,
    region: "center",
    itemSelector: 'div.rule-item',
    border: true,
    listeners: {
        itemclick: function(view, record, item, index, e, eOpts) {

        }
    }
});

我尝试了 hasCls 和其他一些方法来在单击 addgroup class 时调用两个不同的函数,但没有成功。

请帮忙。

您的方法应该可以正常工作:

itemclick: function(view, record, item, index, e, eOpts) {
    clickedEl = Ext.get(e.target);

    console.log(clickedEl.hasCls('add'));
}

示例:https://fiddle.sencha.com/#fiddle/h4o