打印本文 打印本文 关闭窗口 关闭窗口
Asp.net页面之间通过脚本传递数据
作者:武汉SEO闵涛  文章来源:敏韬网  点击数661  更新时间:2009/4/23 10:40:05  文章录入:mintao  责任编辑:mintao

   新建一个 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("<script>\n");
    sbScript.Append("function OpenWin(){\n");
    sbScript.Append("var str=window.showModalDialog(''''WebForm2.aspx'''',document.Form1.txtWndName.value)\n");
    sbScript.Append("if(str!=null) document.Form1.txtWndName.value=str\n");
    sbScript.Append("}\n</script>\n");
    string script = sbScript.ToString();
    RegisterClientScriptBlock("clientScript",script);
   }
   this.btnOpen.Attributes.Add("OnClick","OpenWin()");
  }

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

<frameset rows="0,*">

     <frame src="about:blank"

    <frame src="WebForm3.aspx">

</frameset>

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

private void Page_Load(object sender, System.EventArgs e)
  {
   // 在此处放置用户代码以初始化页面
   if(Page.IsPostBack)
   {
    StringBuilder sbScript = new StringBuilder();
    sbScript.Append("<script>\n");
    sbScript.Append("window.parent.returnValue=''''" + this.TextBox1.Text + "''''\n");
    sbScript.Append("window.parent.close()\n");
    sbScript.Append("</script>\n");

    string script = sbScript.ToString();

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

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

打印本文 打印本文 关闭窗口 关闭窗口