Javascript 我可以从ModalDialog窗口中获取开启器窗口吗?

Javascript 我可以从ModalDialog窗口中获取开启器窗口吗?,javascript,Javascript,通常情况下,当使用window.open打开窗口时,我可以使用window.opener访问调用者窗口,是否可以在模式对话框swindow.showmodaldialdialog中执行类似操作?正如您在MSDN页面上看到的关于感谢Pekka [t] window.opener方法返回 null,而不是对 打开窗户。所以你不能刷新 打开窗户 window.opener.location.refresh 例如,如果您使用 showModalDialog以打开编辑窗口 对话如果你想做的只是 每次刷新打

通常情况下,当使用window.open打开窗口时,我可以使用window.opener访问调用者窗口,是否可以在模式对话框swindow.showmodaldialdialog中执行类似操作?

正如您在MSDN页面上看到的关于感谢Pekka

[t] window.opener方法返回 null,而不是对 打开窗户。所以你不能刷新 打开窗户 window.opener.location.refresh 例如,如果您使用 showModalDialog以打开编辑窗口 对话如果你想做的只是 每次刷新打开的窗口 ModalDialog关闭了,这很容易 包括window.location.refresh 就在打电话给 showModalDialog。但如果你 要刷新中的打开窗口吗 某些情况下,例如开口 刷新窗口需要一段时间,您可以 你可以通过一个 对话辩论

我认为一个更聪明的方法是 将窗口引用本身作为dialogArgument传递。在 调用窗口,使用 window.showmodaldiallog'newurl.asp', 窗在调用的对话框中 使用var检索引用 开窗器= window.dialogArguments。你可以用 存储在中的窗口引用 可变开窗器代替 window.opener,以刷新 从被调用的对话框调用窗口

请注意,Firefox和Chrome 实例似乎没有这些 局限性,并似乎治疗 ModalDialogs更像是普通的 窗户。如果你这样做了,请记住这一点 使用这些浏览器之一进行测试, 但你打算申请在中国工作吗 所有浏览器

正如您在MSDN页面上看到的关于感谢Pekka的

[t] window.opener方法返回 null,而不是对 打开窗户。所以你不能刷新 打开窗户 window.opener.location.refresh 例如,如果您使用 showModalDialog以打开编辑窗口 对话如果你想做的只是 每次刷新打开的窗口 ModalDialog关闭了,这很容易 包括window.location.refresh 就在打电话给 showModalDialog。但如果你 要刷新中的打开窗口吗 某些情况下,例如开口 刷新窗口需要一段时间,您可以 你可以通过一个 对话辩论

我认为一个更聪明的方法是 将窗口引用本身作为dialogArgument传递。在 调用窗口,使用 window.showmodaldiallog'newurl.asp', 窗在调用的对话框中 使用var检索引用 开窗器= window.dialogArguments。你可以用 存储在中的窗口引用 可变开窗器代替 window.opener,以刷新 从被调用的对话框调用窗口

请注意,Firefox和Chrome 实例似乎没有这些 局限性,并似乎治疗 ModalDialogs更像是普通的 窗户。如果你这样做了,请记住这一点 使用这些浏览器之一进行测试, 但你打算申请在中国工作吗 所有浏览器


相关:答案在链接中。我现在无法给出一个完整的答案:答案在链接中。我现在想不出一个完整的答案