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

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("<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的弹出窗口实现数据传递。

时间: 2024-12-21 08:07:58

Asp.net页面之间通过脚本传递数据的相关文章

ASP.NET页面之间传递参数的几种方法

  Asp.net页面之间传递参数的几种方法 第一种方法:通过URL链接地址传递 send.aspx: protected void Button1_Click(object sender, EventArgs e) { Request.Redirect("Default2.aspx?username=honge"); } receive.aspx: string username = Request.QueryString["username"]; 这样可以得到参

谷歌扩展 js-求助:谷歌扩展 如何使插入页面的内容脚本里面数据在刷新之后不丢失

问题描述 求助:谷歌扩展 如何使插入页面的内容脚本里面数据在刷新之后不丢失 学了几天js,自己编了一个扩展,有个内容脚本,每次刷新页面的时候都会重新插入,导致一些赋值的数据丢失.请问怎么解决? ps:也不知道问的地方对不对 第一次提问好紧张啊 怎么才能装作经常发帖的样子呢 解决方案 可以把这些数据存到chrome的数据库中,这样下次加载的时候读取.

在多个ASP.NET页面之间传递值

问题描述 querystring,session,Application,Cookie,Server.Transfer.....哪种方法最好用,它们各有什么区别,请指教,谢谢!!! 解决方案 解决方案二:想用那种视具体情况...解决方案三:QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中.如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法.但是对于传递数组或对象的话,就不能用这个方法了.Session相当强悍的一个东西..不过用的多会使

在两个ASP.NET页面之间传递值

asp.net|页面 引言 ASP.NET提供了卓越的事件驱动编程模型,让开发者简化了应用程序的总体设计,但是这个也造成了它固有的一些问题,例如,使用传统的ASP里,我们可以通过使用POST方法很容易地实现页面间传递值,同样的事情,在使用事件驱动编程模型的ASP.NET就不是那么容易了,当然了,我们仍然有一些方法可以实现同样的功能.本文将试着使用不同的可能的方法来解决这个问题,但可以预见是,本文将包含使用querystring,session变量以及server.Transfer方法来实现页面间

ASP.NET 页面之间传递值方式优缺点比较_实用技巧

本题考查面试者对ASP.NET中多页面传值的理解是否全面.因为ASP.NET的页面表单提交到自身,完成回传的功能,所以默认情况下不能使用POST方式进行多页面传值.关于这些传值方式的分析如下所示.1.URL传值这是经典的传值方式,这种方法的使用非常简单,不过所传递的值是会显示在浏览器的地址栏上的,而且不能传递对象.所以这种方法一般用于传递的值少且安全性要求不高的情况下.在*.aspx页面开发中可以使用超级链接文本进行传值,如以下代码所示.<asp:HyperLink runat="serv

(转)列举ASP.NET 页面之间传递值的几种方式

1.使用QueryString,  如....?id=1; response. Redirect().... 2.使用Session变量.3.使用Server.Transfer.4.Application .5.<input type="hidden"></input> 6.数据库. 使用QueryString : 使用QuerySting在页面间传递值已经是一种很老的机制了,这种方法的主要优点是实现起来非常简单,然而它的缺点是传递的值是会显示在浏 览器的地址栏

ASP.NET页面之间传递值个人总结

asp.net|页面 方式1:    在接收页 的html代码里加上一行: <%@ Reference Page = "WebForm1.aspx" %>                     WebForm1 fp=(WebForm1)Context.Handler;    this.TextBox1.Text=fp.name;   //name 是第一页的public变量  Context  提供对整个当前上下文(包括请求对象)的访问.您可以使用此类共享页之间的信息.

asp.net 页面之间传值方法总结

asp教程.net 页面之间传值方法总结 主要是设置PostBackUrl属性值,设置为你所需要跳转页面的名称("~/Default2.aspx"),然后再("~/Default2.aspx")页面中用PreviousPage.FindControl()方法找到所需要当前页的控件. 使用QueryString       使用QuerySting在页面间传递值已经是一种很老的机制了,这种方法的主要优点是实现起来非常简单,然而它的缺点是传递的值是会显示在浏览器的地址栏

asp.net页面之间传值方法详解

asp.net中页面之间传值我们用得最多的就是get,post这两种了,其它的如session,appliction,cookie等这些相对来说少用也不是常用的,只是在特殊情况下在使用了. 1. Get(即使用QueryString显式传递)      方式:在url后面跟参数.      特点:简单.方便.      缺点:字符串长度最长为255个字符:数据泄漏在url中.      适用数据:简单.少量.关键的数据.      适用范围:传递给自己.传递给另一个目标页面:常用于2个页面间传递