主窗口页面及后台代码
页面
<head runat="server">
<title></title>
<script type="text/javascript">
function Open() {
window.open ('Default3.aspx','newwindow','height=100,width=400,top=0,left=0,toolbar=no,menubar=no,scrollbars=no, resizable=no,location=no, status=no') ;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<%--这个UpdatePanel只是防止页面刷新--%>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Button ID="Button1" runat="server" Text="打开子窗口" OnClientClick="Open();" />
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</form>
</body>
后台
if (Session["hh"] != null)
{
this.TextBox1.Text = Session["hh"].ToString();
}
子窗口页面及后台
页面
<div>
<asp:Button ID="Button1" runat="server" Text="Button" οnclick="Button1_Click" />
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</div>
后台:注册脚本
Session["hh"] = this.TextBox1.Text.Trim();
string key = "Yoyo";
//current page type
Type currentType = this.GetType();
ClientScriptManager cs = Page.ClientScript;
if (!cs.IsStartupScriptRegistered(currentType, key))
{
//要执行的脚本
string script = "window.close();window.opener.location.reload();"; //刷新父窗口
cs.RegisterStartupScript(currentType, key, script, true);
}