如何将点击事件添加到 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"> </i>',
'<tpl else>',
'<i class="group"> </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 和其他一些方法来在单击 add
和 group
class 时调用两个不同的函数,但没有成功。
请帮忙。
您的方法应该可以正常工作:
itemclick: function(view, record, item, index, e, eOpts) {
clickedEl = Ext.get(e.target);
console.log(clickedEl.hasCls('add'));
}
我想给Xtemplate 的内部元素添加点击事件,下面是我的代码。 提前致谢。
var ruleTemplate = new Ext.XTemplate(
'<tpl for=".">',
'<div class="rule-item" id={key}>',
'{key}',
'<tpl if="value == \'true\'">',
'<i class="add"> </i>',
'<tpl else>',
'<i class="group"> </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 和其他一些方法来在单击 add
和 group
class 时调用两个不同的函数,但没有成功。
请帮忙。
您的方法应该可以正常工作:
itemclick: function(view, record, item, index, e, eOpts) {
clickedEl = Ext.get(e.target);
console.log(clickedEl.hasCls('add'));
}