我的网站是用 ASP.NET 用 C# 编写的,所有正在加载的页面都是 .aspx 页面。
我正在使用一个按钮
<input type="button" onclick="FindBuilding()">
触发一个javascript函数
function FindBuilding() {
$('#BuildingPopup).load('./BuildingPopup.aspx?lid=xxx');
$('#BuildingPopup).dialog('open');
}
打开我创建的模态对话框
$("#BuildingPopup").dialog({
modal: false,
autoOpen: false,
position: "center",
resizable: false,
height: 671,
width: 1042,
stack: true
});
对话框是在$(document).ready
函数内部创建的
问题:
在对话框加载 BuildingPopup.aspx 后,父页面会加载相同的页面——每当我尝试在模式对话框中加载任何页面时都会发生这种情况,无论内容如何。BuildingPopup.aspx 只是一个示例。
我试图解决的问题:
我尝试先创建对话框,然后使用open
按钮加载页面。我也尝试过使用iframe
which可以工作,但页面无法很好地显示,这是一个麻烦/糟糕的修复。
一些线索?
- 某些页面在页面加载期间通过 AJAX 调用 Web 服务
- 该问题在有和没有更新面板的页面上仍然存在
- 某些页面在页面加载期间正在评估代码块
更新
我发现当父页面上的更新面板更新时会出现问题。
<asp:UpdatePanel ID="updatepanel1" runat="server" ChildrenAsTriggers="true" UpdateMode="Conditional">
当<asp:Timer>
在代码隐藏中执行 OnTick() 方法(以更新面板)时会发生这种情况。