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

时间:2015-01-26 17:37:21

标签: extjs extjs4.2

我想将click事件添加到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类时调用两个不同的函数,但没有运气。

请帮忙。

1 个答案:

答案 0 :(得分:2)

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

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

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

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