Asp.net页面之间通过脚本传递数据

新建一个 WebForm1.aspx页面,添加一个TextBox和一个Button控件,在页面的Page_Load里写下注册客户端脚本的语句:

private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if(!Page.IsClientScriptBlockRegistered("clientScript"))
{
StringBuilder sbScript = new StringBuilder();
sbScript.Append("

1<script>\n");   
2sbScript.Append("function OpenWin(){\n");   
3sbScript.Append("var str=window.showModalDialog('WebForm2.aspx',document.Form1.txtWndName.value)\n");   
4sbScript.Append("if(str!=null) document.Form1.txtWndName.value=str\n");   
5sbScript.Append("}\n</script>

\n");
string script = sbScript.ToString();
RegisterClientScriptBlock("clientScript",script);
}
this.btnOpen.Attributes.Add("OnClick","OpenWin()");
}

新建一个WebForm2.aspx页面,放入两个框架:

1<frameset rows="0,*">
2<frame <frame="" src="WebForm3.aspx"/>
3</frameset>

新建一个WebForm3.aspx页面,在Page_Load里写下一下注册脚本的语句:

private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if(Page.IsPostBack)
{
StringBuilder sbScript = new StringBuilder();
sbScript.Append("

1<script>\n");   
2sbScript.Append("window.parent.returnValue='" + this.TextBox1.Text + "'\n");   
3sbScript.Append("window.parent.close()\n");   
4sbScript.Append("</script>

\n");

string script = sbScript.ToString();

if(!Page.IsClientScriptBlockRegistered("clientScript"))
{
RegisterClientScriptBlock("clientScript",script);
}
}
}

通过JavaScript的弹出窗口实现数据传递。

Published At
Categories with Web编程
Tagged with
comments powered by Disqus