Response.Redirect 传递多个属性值

<pre name="code" class="csharp">//window.opener 的用法 
//window.opener 返回的是创建当前窗口的那个窗口的引用,比如点击了a.htm上的一个链接而打开了b.htm,然后我们打算在b.htm上输入一个值然后赋予a.htm上的一个id为“nam//e”的textbox中,就可以写为:
//window.opener.document.getElementById("name").value = "输入的数据"; 
 

QueryString传值

传送页面代码

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>QueryString</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <input type="text" id="txt1" runat="server" />
        <input type="text" id="txt2" runat="server" />
        <input type="button" id="btn1" value="提交" runat="server" onserverclick="btn1_ServerClick" />
    </div>
    </form>
</body>
</html>

<pre style="margin-top: 0px; margin-bottom: 0px; padding: 0px; white-space: pre-wrap; word-wrap: break-word; line-height: 21.6000003814697px; font-family: 'Courier New' !important;"><pre name="code" class="csharp">protected void btn1_ServerClick(object sender, EventArgs e)
    {
        string aa = txt1.Value;
        string bb = txt2.Value;
        string url = "DestinationPage5.aspx?parameter1=" + aa + "¶meter2=" + bb;
        Response.Redirect(url, false); 
    }
 
 
 
 

接收页面代码

protected void Page_Load(object sender, EventArgs e)
    {
        txt1.Value = Request.QueryString["parameter1"].ToString();
        txt2.Value = Request.QueryString["parameter2"].ToString();
    }





顺便总结一下通过页面之间传值的方法:

表单提交

传送页面代码

<pre name="code" class="csharp"><pre name="code" class="csharp"><html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>表单提交</title>
     <script type="text/javascript" language="javascript">
            function post()
            {    
                forPost.action="DestinationPage.aspx";
                forPost.submit();
            } 
    </script>
</head>
<body>
        <form id="forPost"  method="post">
         方式一:表单提交<br />
         <input type="text" id="SourceData2" runat="server"/>
         <input type="button" id="btnTransfer1" value="提交" οnclick="post();" />
        </form>
/body>
</html>
 
 

接收页面代码

protected void Page_Load(object sender, EventArgs e)

{
    string a = Request.Form["SourceData2"].ToString();
    txt1.Value = a;
}

链接地址传值

传送页面代码

<a href="DestinationPage6.aspx?param1=1111¶m2=2222">跳转</a>

接收页面代码

protected void Page_Load(object sender, EventArgs e)
    {
        txt1.Value = Request["param1"];
        txt2.Value = Request["param2"];
}

Context传值

通过Context传值,在传送页面之前,将需要传递到其他页面的值存在Context中。

传送页面代码

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Context</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <input type="text" id="txt1" runat="server" />
        <input type="button" id="btn1" value="提交" runat="server" onserverclick="btn1_ServerClick" />
    </div>
    </form>
</body>
</html>

protected void btn1_ServerClick(object sender, EventArgs e)
    {
        Context.Items["value"] = txt1.Value;
        Server.Transfer("DestinationPage3.aspx");
    }

接收页面代码

protected void Page_Load(object sender, EventArgs e)
    {
        string a = Context.Items["value"].ToString();
        txt1.Value = a;
    }

Server.Transfer传值

传送页面代码

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Server.Transfer</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <input type="text" id="txt1" runat="server" />
        <input type="button" id="btn1" value="提交" runat="server" onserverclick="btn1_ServerClick" />
    </div>
    </form>
</body>
</html>

protected void btn1_ServerClick(object sender, EventArgs e)
    {
        Server.Transfer("DestinationPage4.aspx");       

    } 

    public string Value
    {
        get { return txt1.Value; }
    }

接收页面代码

public partial class Transfer_DestinationPage4 : System.Web.UI.Page
{
    private Transfer_SourcePage4 sourcePage; 

    protected void Page_Load(object sender, EventArgs e)
    {
        sourcePage = (Transfer_SourcePage4)Context.Handler;
        string aa = sourcePage.Value;
        txt1.Value = aa;
    }
}

Cookie传值

传送页面代码

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Cookie</title>
</head>
<body>
    <form id="form1" runat="server">
    <div> 
        <input type="text" id="txt1" runat="server" />
        <input type="button" id="btn1" value="提交" runat="server" onserverclick="btn1_ServerClick" />
    </div>
    </form>
</body>
</html>

protected void btn1_ServerClick(object sender, EventArgs e)
    {
        string aa = txt1.Value;
        HttpCookie cookie = new HttpCookie("MyCookie", aa);
        Response.Cookies.Add(cookie);
        string url = "DestinationPage8.aspx";
        Response.Redirect(url, false);
    }

接收页面代码   

protected void Page_Load(object sender, EventArgs e)
    {
        HttpCookie myCookie = Request.Cookies["MyCookie"];
        txt1.Value = myCookie.Value;
    }


Session传值

通过Session取值,在一个页面中赋值,在其他页面中共享。为避免造成Session值的混乱无序,应尽量少用Session传非公共的变量。Session比较适合用来保存一些公共变量。

传送页面代码

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Session传值</title>
</head>
<body>
    <form runat="server">
        <input type="text" id="txt1" runat="server" />
        <input type="button" id="btn1" value="提交" runat="server" onserverclick="btn1_ServerClick" />
    </form>
</body>
</html>

protected void btn1_ServerClick(object sender, EventArgs e)
{   
    Session["value"] = txt1.Value;
    Response.Redirect("DestinationPage2.aspx");
}

接收页面代码

protected void Page_Load(object sender, EventArgs e)
{
   txt1.Value = Session["value"].ToString();
}

Application传值

此种方法不常使用,因为Application在一个应用程序域范围共享,所有用户可以改变及设置其值,故只应用于计数器等需要全局变量的地方。

传送页面代码

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Application</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <input type="text" id="txt1" runat="server" />        
        <input type="button" id="btn1" value="提交" runat="server" onserverclick="btn1_ServerClick" />
    </div>
    </form>
</body>
</html>

protected void btn1_ServerClick(object sender, EventArgs e)
    {
        string aa = txt1.Value;
        Application["param1"] = aa;
        string url = "DestinationPage7.aspx";
        Response.Redirect(url, false);
    }

接收页面代码

protected void Page_Load(object sender, EventArgs e)
    {
        txt1.Value = Application["param1"].ToString();
    }
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值