我试图在执行未在与窗口相同的文件中定义的函数后关闭窗口。
我将尝试解释所涉及的类的结构:
有 2 个类,Class1.js和Class2.js,在 Class1.js 中定义了一个函数 function1(){}和function2(){}在 Class2.js 中定义
这个怎么运作:
function2 它在 Class1.js 中调用,打开一个窗口,它接收作为参数 function1,如:
功能2(功能1);
function1 它在新窗口上单击按钮时执行,也在 Class2.js 中定义:
var win = new Ext.Window({
id: 'win that I want to close',
.
.
.
buttons: [{
id: 'button that activates function1',
text: 'button1',
listeners: {
click: function1
},
scope: win
},
.
.
.
]
});
win.show();
在 Class1.js 中,在 function1 我尝试执行以下操作:
if(this.id == 'win that I want to close'){
this.close();
}
但是我得到的范围是新窗口中按钮的范围,而不是窗口的范围,所以我无法关闭它。
我知道我的解释很糟糕,但不容易解释,我完全被困在这一点上。
如果你试图理解我写的东西,恭喜你,你很勇敢!并感谢您的帮助!