Javascript 在父窗口已关闭时重新加载父窗口

Javascript 在父窗口已关闭时重新加载父窗口,javascript,jquery,html,Javascript,Jquery,Html,我有一个父窗口1,它打开一个弹出子窗口2,然后打开一个弹出子窗口3。当3打开时,2通过self.close关闭 我的问题是,当我关闭3时,如何刷新1?我尝试了window.opener.opener.reload,但由于2已关闭,因此无法正常工作。我认为您无法做到这一点。一旦2窗口关闭,您将失去对它的引用,因此您无法引用它的开启器1来刷新它 然而,通过Chrome控制台中的快速测试判断,将Window1的引用向下传递到Window3文档,然后使用它重新加载它。可能是这样的: // in wind

我有一个父窗口1,它打开一个弹出子窗口2,然后打开一个弹出子窗口3。当3打开时,2通过self.close关闭


我的问题是,当我关闭3时,如何刷新1?我尝试了window.opener.opener.reload,但由于2已关闭,因此无法正常工作。

我认为您无法做到这一点。一旦2窗口关闭,您将失去对它的引用,因此您无法引用它的开启器1来刷新它

然而,通过Chrome控制台中的快速测试判断,将Window1的引用向下传递到Window3文档,然后使用它重新加载它。可能是这样的:

// in window #1 - opening window #2
var win2 = window.open('samedomainurl...');

// -----------------
// in window #2 (just opened)
// -----------------
// open window 3
var win3 = window.open('samedomainurl...');
// pass reference to window.opener (which is #1) to newly opened win3 document
win3.document.grandparentWindow = window.opener;

// -----------------
// in window #3 - after closing #2 you still can access #1 using document.grandparentWindow property
// -----------------
// reload original window
document.grandparentWindow.location.reload();

我添加了win3.document.grandrentWindow=window.opener;在创建3之后,在2中。在那之后,我关闭了2。在my 3中,我使用了document.grandrentWindow.location.reload;自我封闭;但是祖父母窗口没有重新加载,3也没有关闭。我没有得到任何错误。我想,东西卡在document.grandrentWindow.location.reload中了;检查您的3中是否有1个可用窗口-如果3中的document.GrandrentWindow返回未定义的消息,说明其他地方有问题,请尝试发出警报。请使用更多信息进行编辑。不鼓励只编码并尝试此答案,因为它们不包含可搜索的内容,并且不解释为什么有人应该尝试此答案。
window.parent.opener.location.reload();