0

我有一个 mypage1.aspx,它有一个打开弹出窗口的链接,这个弹出窗口有另一个链接打开第二个弹出窗口并关闭第一个弹出窗口。在打开的第二个弹出窗口中,就像一个向导一样,最后有一个输入,我有一个关闭窗口的功能,如下所示(在 Clients.js 中)

Clients.prototype.closeThisWindow = function() {
    window.close();
}

当按钮被完美地点击窗口。但是现在我遇到了这个相同功能的问题,我需要在父页面中隐藏一个链接,但是

window.parent   (parent is always null)
window.opener   (opener is always null too)

我在父级中定义了一个函数来隐藏链接,但不能调用该函数,因为 opener 始终为 null

我试过

Clients.prototype.closeThisWindow = function() {
    window.opener.hideLink();
    window.close();
}

hideLink 是父页面中定义的函数,但 opener 始终为空,还有其他方法可以做到这一点吗?我不擅长 javascript,但在这里我工作的地方他们已经设计了这样的,我必须让它从 javascript 中工作。鉴于这种情况,我将不胜感激。

4

1 回答 1

1

在打开向导的功能中:

var result_from_open = open(/*your paramenters*/);
result_from_open.main_window = window.opener;

在 Clients.js 中:

Clients.prototype.closeThisWindow = function() {
  //window.opener.hideLink();
  window.main_window.hideLink();
  window.close();
}
于 2012-06-11T15:30:50.493 回答