如何在IE中重新加载模式对话框

hig*_*ive 2 javascript internet-explorer modal-dialog

我正在开发一个使用modaldialog(showModalDialog())的Web应用程序.用户必须填写一些文本字段并作为通常的Web表单,如果用户犯了错误,则需要重新加载对话框.我能够通过使用来想出这个location.reload(true);

但这不适用于IE.我错过了什么或有任何限制吗?请指导我.

谢谢

fro*_*der 5

执行以下麻烦是因为分配到location.href将不起作用.它只会打开另一个窗口,从窗口的父级加载页面.

首先,你需要在头部创建一个基本标签,例如

<head>
    <base target="_self" />
</head>
Run Code Online (Sandbox Code Playgroud)

然后模拟用户单击链接,因为此链接只是脚本激活重新加载过程的实用程序,您可能希望隐藏它.让我们称这个链接重新加载.

<a id="reload">reload</a>
Run Code Online (Sandbox Code Playgroud)

重新加载模态对话框的脚本是

// Get the link object to simulate user click
var reload = document.getElementById('reload');

// Assign the modal url to the link then click!
reload.href = window.location.href;
reload.click();
Run Code Online (Sandbox Code Playgroud)

您现在应该能够在IE中刷新模式对话框.