点击tpl链接时,ExtJS 4.2自定义组件触发事件
ExtJS 4.2 Custom Component fire event when click in a tpl link
我有一个自定义组件,它有一个到html tpl的链接,当我点击这个链接时,我需要该组件激发一个事件,让我在控制器中侦听。
代码:
Ext
Ext.define("Ext.ux.newpanel.NewPanel", {
extend: 'Ext.Component',
...
tpl: [
'<div class="title center"><p>{title}</p></div>',
'<div class="content center">',
'<div class="number center"><h1>{qtd}</h1></div>',
'<div class="ind left">',
'{ind}',
'</div>',
'</div>',
'<div class="more">',
'<a href="#" class="clickme">See all...</a>',
'</div>'
],
...
我曾尝试创建带有委托的监听器,但我无法将组件范围带入监听器。代码:
..
listeners: {
// Add the listener to the component's main el
el: {
delegate: '.clickme',
click: function(ev, li) {
// need to fire event in component here
}
}
},
...
需要在"clickme"类中启动该事件。
谢谢!
解决方案:
cmp.el.on('click', function(event, target) {
cmp.fireEvent('openRel', cmp);
}, null, {delegate: 'a'});
这是对这个答案的一点修改:如何将点击事件附加到ExtJS模板元素?
需要获取组件的DOM,然后将单击事件委托给标记。
相关文章:
- 自定义HTML元素属性未显示-Web组件
- 将自定义脚本加载到Vue.js组件中
- 将自定义Google Sheets功能转换为附加组件
- 如何正确自定义第三方反应组件
- 将自定义属性添加到 vuejs 组件
- 对自定义组件中的本地访问引用进行反应
- Angular 2中组件的自定义用户模板
- 点击tpl链接时,ExtJS 4.2自定义组件触发事件
- 如何使用Angular 1.5组件将属性求值为字符串,这是一个自定义函数
- Angular2中列表组件的自定义模板(不包含ng内容的transclusion)
- 如何使用组件和自定义验证实现Angular 1 Form
- Extjs 4,事件处理,范围,自定义组件
- Gwd自定义组件及其事件处理程序
- 使用普通javascript和验证的自定义web组件
- 从自定义组件内部查找 Ember
- Windows 8 Metro UI HTML 应用中的自定义可重用 UI 组件
- 在 React 组件中检索自定义 data-* 属性值(无事件)
- 在 ionic 2 中缓存自定义组件内容
- 挖空绑定自定义组件,使其不与中心视图模型冲突
- 使用 Aurelia在视图中动态生成自定义组件