我有一个对话框页面,只要它被调用,动态生成按钮并且iframe打开与模块相关的页面,我就会在整个项目中使用它。我的问题是,当我点击用户列表时,它会打开,我会看到iframe中的用户列表,但是当我点击添加用户并打开另一个对话框以添加更多用户然后保存它时。它不会刷新父页面或iframe。它是相同的对话框页面和相同的iframe但内容不同。它正在使用IE,因为我使用的是window.showModalDialog,但它无法在Chrome上运行。
以下是打开对话框的代码
var ua = window.navigator.userAgent;
var msie = ua.indexOf("MSIE ");
var result;
if (msie > 0) // If Internet Explorer
result = OpenModalDialog(rootPath + "modules/document/dialogs/secureusers.aspx" + location.search, "width=600, height=500", true, true);
else // If another browser
result = OpenWindow(rootPath + "modules/document/dialogs/secureusers.aspx" + location.search, "width=600, height=500");
if(result == true) {
SecurityCallback.Callback("");
}
这是对话框页面
<body onload="OnDialogLoad()" class="DialogBody">
<table class="table" >
<asp:PlaceHolder ID="DialogHeader" Runat="server">
<tr>
<td class="DialogHeader">
<table class="table2">
<tr>
<td><img src="img/dialog/logo.gif" border="0" alt="Logo" /></td>
<td width="100%">
<span id="DialogTitle"></span>
<span id="DialogCaption"></span>
</td>
</tr>
</table>
</td>
</tr>
</asp:PlaceHolder>
<tr>
<td width="100%" height="100%" style="border-style: none;"><iframe id="CallbackFrameDialog" name="CallbackFrameDialog" src="<%= this.DialogType %>" frameborder="0" width="100%" height="100%" style="width: 100%; height: 100%;"></iframe></td>
</tr>
<asp:PlaceHolder ID="DialogFooter" Runat="server">
<tr>
<td id="ButtonContainer" class="DialogFooter" align="middle" style="padding: 3px; padding-top: 3px;"></td>
</tr>
</asp:PlaceHolder>
</table>
</body>