私は Extjs4 で作業しており、ハイパーリンクでイベントをキャッチする方法に行き詰まっています。取り組みましたが解決できませんでした。
これが私のコードです:
コードを表示
Ext.define('AM.view.user.linkView', {
extend: 'Ext.panel.Panel',
alias: 'widget.Link',
title: 'My Cool Panel',
html: '<div><a href="#" id="linkId">This link will open a window</a></div><br /> <label for="myInput">Type here: </label><input name="myInput" type="text" value="" />',
});
コントローラーコード
Ext.define('AM.controller.Users', {
extend: 'Ext.app.Controller',
stores: ['Users'],
models: ['User','Book'],
views: ['user.Edit', 'user.List','user.Create','user.linkView'],
init: function() {
this.control({
'Link': {
afterrender: function(cmp)
{
Ext.get('#linkId').on('click', function(event, target) {
console.log(target);
}, this);
}
}
});
}
});
上記のコードを実行すると、次のエラーが発生します。
Uncaught TypeError: Cannot call method 'on' of null
どうすればこの問題を解決できますか?