2011-12-30 63 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或者直接輸入到數據庫中的東西,他們可能會導致問題和/或意外的結果。

相關問題