2011-12-30 38 views
2

这我的代码结束Asp.net传递值从txtbox到另一个页面

... 
If lblErrMsg.Text = "" Then 

    Response.Redirect("UserPage.aspx") 
    End If 

我想通过txtUser的价值(我创造它在当前的网页...)到UserPage的.aspx。

感谢的对我的帮助......

这是在VB.net不是在C#请

回答

4

C#版本

1)使用查询字符串

Response.Redirect("user.aspx?val="+txtBox.Text); 

和userp.aspx.cs,

string strVal=Request.QueryString["val"]; 

2)使用Session

在第一届的设置重定向前的页面

Session["val]=txtBox.Text; 
Response.Redirect("user.aspx"); 

和user.aspx.cs

String strVal=(string) Session["val"]; 

编辑:VB.NET VERSION

1)使用查询字符串

Response.Redirect("user.aspx?val=" + txtBox.Text) 

和user.aspx.vb

Dim strVal As String = Request.QueryString("val") 

2)使用Session

在第一页

Session("val")=txtBox.Text 
Response.Redirect("user.aspx") 

和user.aspx.vb.设置会话

Dim strVal As String = DirectCast(Session("val"), String) 
+0

这是在C#请我想在Vb.net? – FrankSharp 2011-12-30 03:40:44

+0

@FrankSharp:我用vb.net版本更新了答案 – Shyju 2011-12-30 04:49:35

0

警告:这是毛,但简单的解决方案

Session("myTextbox")= txtUser.Text 

这将持续存在价值所以在下一页的page_load上你可以说

txtUser.Text=Session("myTextBox") 
1

你可以在查询中传递它字符串,像这样:

Response.Redirect("UserPage.aspx?user=" + HttpUtility.UrlEncode(txtUser.Text)); 

,然后通过检索:

string user = Request.QueryString["user"]; 

如果你担心用户提供了一个查询字符串(一定要验证它)搞乱,你也可以存储在做重定向之前,请使用Session variable

+0

我在Response.Redirect(“UserPage.aspx”)和UserPage.aspx的页面加载之前添加了Response.Redirect,我写了string user = Request.QueryString [“user”];它承认让我错误...你的代码不是在C#中? – FrankSharp 2011-12-30 03:22:56

0

你是通过什么表单页面?这是一个事情的清单。你可以有一个具有不同属性的对象,然后可以通过一个会话传递它。如果你有多个页面,我会建议你这样做,如果你最终可能在其他地方重复使用它。通过url传递,你需要验证它,因为如果有人用正确的信息输入url或者直接输入到数据库中的东西,他们可能会导致问题和/或意外的结果。

相关问题