如何从javascript中找到模态对话框开启器?

如何从javascript中找到模态对话框开启器?,javascript,popup,opendialog,Javascript,Popup,Opendialog,我有一个打开模式对话框的页面。在对话框上完成操作后,我想刷新打开器页面。但是,当我使用“openDialog”打开弹出窗口时,我无法使用弹出页面上的window.opener访问打开程序。当我想要访问时,它看起来“未定义”。(我不想在这种情况下使用“弹出”方法。顺便说一下,我希望它是一个对话框。使用“弹出”是我的第二个计划。) 摆脱这个问题的最佳做法是什么 当我使用Shadowbox时,我可以访问它 self.parent.location.reload(); 也许这也适用于您。当我使用Sha

我有一个打开模式对话框的页面。在对话框上完成操作后,我想刷新打开器页面。但是,当我使用“openDialog”打开弹出窗口时,我无法使用弹出页面上的window.opener访问打开程序。当我想要访问时,它看起来“未定义”。(我不想在这种情况下使用“弹出”方法。顺便说一下,我希望它是一个对话框。使用“弹出”是我的第二个计划。)


摆脱这个问题的最佳做法是什么

当我使用Shadowbox时,我可以访问它

self.parent.location.reload();

也许这也适用于您。

当我使用Shadowbox时,我可以访问它

self.parent.location.reload();
也许这也适用于你。

如果你看一下,你会发现你可以通过传递模态参数使对话框成为模态,这样直到对话框完成它才会返回,此时,您可以重新加载父页面。

如果您查看,您将看到可以通过传递模态参数使对话框成为模态,这样对话框在对话框完成之前不会返回,此时您可以重新加载父页面。


这是我从链接中获得的所需内容

在父项中:

parentVar = "set by parent";
vRv = window.showModalDialog("modalWindow.html",window.self, "");
在模式中:

dialogArguments.parentVar = "set by modal";

注:别忘了用“window.self”设置对opener的引用这是我从链接中得到的

在父项中:

parentVar = "set by parent";
vRv = window.showModalDialog("modalWindow.html",window.self, "");
在模式中:

dialogArguments.parentVar = "set by modal";

注:别忘了用“window.self”设置对opener的引用。

模式对话框是一种阻塞功能。调用者等待框关闭,然后继续。因此,在调用open之后,只需在origin脚本中进行刷新 对话

例如,假设您有一个带有网格的页面。您有一个add按钮来打开一个模式对话框,您需要网格来刷新自己(或者刷新页面,问题是相同的)

下面是打开模态对话框,然后刷新网格的伪代码


替换grid.Refresh();无论您希望执行什么操作,它都将在对话框关闭后执行。

模式对话框是一种阻塞功能。调用者等待框关闭,然后继续。因此,在调用open之后,只需在origin脚本中进行刷新 对话

例如,假设您有一个带有网格的页面。您有一个add按钮来打开一个模式对话框,您需要网格来刷新自己(或者刷新页面,问题是相同的)

下面是打开模态对话框,然后刷新网格的伪代码

替换grid.Refresh();无论您希望执行什么操作,它都将在对话框关闭后执行。

感谢“从模式对话框修改父数据”链接,感谢“从模式对话框修改父数据”链接