父子对子窗口的引用打破子窗体提交

时间:2013-05-09 17:27:31

标签: javascript dom javascript-events

我有一个包含控制它的Javascript视图模型的应用程序。

应用程序使用(window.open())启动一个新窗口,并将“click”事件侦听器分配给新窗口中的按钮。新窗口包含一个表单,该表单在提交时会在其窗口中导致“卸载”事件,从而断开对父窗口的访问。

当窗口“卸载”并且表单提交时,父母对这个新窗口的引用如何保持或恢复?

2 个答案:

答案 0 :(得分:0)

你不能保留这个参考。但是,如果您尝试访问某种值,可以查看cookieslocal storage

您还可以尝试通过将事件侦听器附加到“unload”事件来恢复引用。当事件发生时,关闭当前的“父”窗口,并使“提交”脚本指向父窗口。打开后,您可以从那里重新打开子窗口。

<强>更新

跨窗口javascript是一个混乱的主题。如果适用,我建议采用第一种方法。

答案 1 :(得分:0)

据我所知,并非所有浏览器都允许按名称重新获得对窗口的访问权限,即使您提供它也是如此。但我仍然尝试使用window.open的不同窗口名称。

当试图重新获得访问权限时 - 只需要一个不带网址的window.open - 也许javascript:void(0)作为地址(因此窗口不会离开),只要你使用它就应该是同一个窗口相同的身份。

虽然

但它非常hacky