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

时间:2013-01-24 06:27:43

标签: javascript internet-explorer modal-dialog

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

来提出这个问题

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

由于

1 个答案:

答案 0 :(得分:5)

执行以下麻烦是因为分配到location.href将无法正常工作。它只会打开另一个窗口,从模态的父级加载页面。

首先,您需要在头部创建基本标记,例如

<head>
    <base target="_self" />
</head>

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

<a id="reload">reload</a>

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

// 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();

您现在应该能够在IE中刷新模态对话框。