Hyperlink 如何在extjs4中处理控制器中的dom事件?
我在Extjs4中工作,一直在研究如何捕捉超链接上的事件。我努力了,但没能解决它 这是我的密码: 查看代码Hyperlink 如何在extjs4中处理控制器中的dom事件?,hyperlink,extjs4,extjs4.1,extjs-mvc,Hyperlink,Extjs4,Extjs4.1,Extjs Mvc,我在Extjs4中工作,一直在研究如何捕捉超链接上的事件。我努力了,但没能解决它 这是我的密码: 查看代码 Ext.define('AM.view.user.linkView'{ 扩展:“Ext.panel.panel”, 别名:“widget.Link”, 标题:“我的酷面板”, html:“在此处键入:”, }); 控制器代码 Ext.define('AM.controller.Users'{ 扩展:“Ext.app.Controller”, 门店:[“用户”], 型号:['User','
Ext.define('AM.view.user.linkView'{
扩展:“Ext.panel.panel”,
别名:“widget.Link”,
标题:“我的酷面板”,
html:“
在此处键入:”,
});
控制器代码
Ext.define('AM.controller.Users'{
扩展:“Ext.app.Controller”,
门店:[“用户”],
型号:['User','Book'],
视图:['user.Edit'、'user.List'、'user.Create'、'user.linkView'],
init:function(){
这是我的控制({
“链接”:{
后渲染:函数(cmp)
{
Ext.get('#linkId')。在('click',函数(事件,目标){
控制台日志(目标);
},这个);
}
}
});
}
});
当我运行上面的代码时,出现以下错误:
Uncaught TypeError: Cannot call method 'on' of null
如何解决此问题?将侦听器更改为:
afterrender: function(cmp) {
cmp.mon(cmp.getEl(), 'click', function(event, target) {
console.log(target);
}, this, {delegate: '#linkId'});
}
但是为什么我不能在(---)上使用Ext.get(“”);如果只有一个id=linkId的元素,请使用Ext.get('linkId')而不是Ext.get('#linkId')。如果需要为多个元素设置一个侦听器,请使用委托。