pre*_*fer 2 javascript events extjs
我有两个窗户.在一个窗口中调用的事件,但处理程序(侦听器)必须在另一个窗口中.可以这样做吗?如果是,怎么样?
如何创建窗口,是第二个窗口,它触发第一个窗口(一个带有监听器)创建的子窗口的事件?
您想要触发自定义事件还是使用extjs事件?
您可以以不同的方式添加自定义事件
var win = new xxxWindow();
win.addEvents('myevent');
Run Code Online (Sandbox Code Playgroud)
要么
Ext.extend(xxxWindow, Ext.Window, {
initComponent: function(){
xxxWindow.superclass.initComponent.apply(this, arguments);
this.addEvents('myevent');
}
});
Run Code Online (Sandbox Code Playgroud)
然后在创建第二个窗口后的第一个窗口(一个带有监听器和第二个窗口的父窗口)中
showSecondWindow: function(){
var win = new xxxWindow();
win.on('myevent', this.myEventHandler, this);
},
myEventHandler: function(arg1, arg2){
}
Run Code Online (Sandbox Code Playgroud)
从第二个窗口触发自定义事件
fireMyEvent: function(arg1, arg2){
this.fireEvent('myevent', arg1, arg2);
}
Run Code Online (Sandbox Code Playgroud)
希望这能解决你的问题.
归档时间: |
|
查看次数: |
3438 次 |
最近记录: |