首先定义一个页面(父窗口)
前台
<form id="form1" runat="server">
<div>
<asp:Button ID="btnSearch" runat="server" Text="Button"
οnclick="btnSearch_Click" />
<asp:Label ID="Label1" runat="server" Text=""></asp:Label>
<a href="javascript:var d = new Date();void(window.open('Default3.aspx',null,'width=550px,height=700px,scrollbars=yes,'))">
弹出第一个窗口</a>
</div>
</form>
后台
protected void Page_Load(object sender, EventArgs e)
{
//给Lable赋值时间用来观察变化
this.Label1.Text = DateTime.Now.ToString();
}
protected void btnSearch_Click(object sender, EventArgs e)
{
//当子窗口关闭时刷新页面
}
第一个子窗口HTML
<head runat="server">
<title>无标题页</title>
<script>
function btnAddPaper_Click() {
if (window.showModalDialog('test2.aspx', null, 'dialogWidth=550px;dialogHeight=600px')) {
var d = new Date();
window.location.replace('Default3.aspx?flag' + String(d))
}
};
<%--onbeforeunload 用于关闭页面时调用刷新父窗口 --%>
window.onbeforeunload = function() {
var obj = window.opener.document.getElementById("btnSearch")
obj.click();
};
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" Text=""></asp:Label>
<a οnclick="btnAddPaper_Click()" href="#"> sss</a>
</div>
</form>
</body>
</html>
在第一个子窗口中的又打开子窗口
<head runat="server">
<title>无标题页</title>
<script>
<%--onbeforeunload 用于关闭页面时调用刷新父窗口 --%>
window.onbeforeunload = function() {
window.returnValue = 'true';
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
</div>
</form>
</body>
</html>