2009-12-21 37 views
0

上午創建一個網頁,允許用戶輸入他們的產品名稱和購買日期。如果他們這樣做? 我檢查這些輸入與我在數據庫中有什麼不同,如果匹配,我將顯示下一頁並將輸入值解析到下一頁中的另一個文本框中。如何解析從一個表單到另一個表單的文本框的值

上午使用response.redirect(「nextpagename.aspx」)顯示下一個頁面,點擊按鈕後,上面是corect。 如何將文本框中的值發送到要顯示在文本框中的其他頁面?

我試着從第一頁獲取項目,並在下一頁的頁面加載我推斷一個新的窗體實例,並將前一頁的getitems傳遞給textbxes我希望它們在下一個顯示形成。然而,這些字段顯示的並不是代碼,而是代碼錯誤。

我的猜測是傳遞一個空字符串..我對嗎? 如果我howdo我解決這個問題。在下面的代碼

更多詳細信息...

protected void Button1_Click(object sender, EventArgs e) 
    { 
     string strConn; 

     strConn = "Provider=MIcrosoft.Jet.OLEDB.4.0;data Source=" + 
      Server.MapPath("App_Data/test.mdb"); 

     OleDbConnection mDB = new OleDbConnection(strConn); 
     mDB.Open(); 

     prodSnStr = pSnTextBox.Text; 
     purDate = Convert.ToDateTime(purDateTextBox.Text); 

     productClass aProduct = new productClass(); 

     if (aProduct.Prods(mDB, prodSnStr, purDate)) 
     { 
      //Session["userId"] = Login1.UserName.ToString(); 

      Response.Redirect("Warranty.aspx"); 

     } 
     else 
     { 
      //e.Authenticated = false; 
     } 




    } 

    public string getProd() 
    { 
     return prodSnStr; 
    } 
    public DateTime getDate() 
    { 
     return purDate; 
    } 

在接下來的頁面加載我有這樣的代碼有

public partial class Warranty : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     Warranty1 war1 = new Warranty1(); 


     pSNoTextBox.Text = war1.getProd(); 
     dateTextBox.Text = war1.getDate().ToString(); 
    } 

回答

2

它傳遞作爲參數:

Response.Redirect("Warranty.aspx?value=" + Server.UrlEncode(someTextBox.Text)); 

而在Warranty.aspx頁面中:

string value = Request["value"]; 
+0

使絕對的意志。然而,我如何做到這一點從一個文本框中的多個值,以及如何將這些值傳遞給下一個表單中的文本框? – Selase 2009-12-21 07:28:30

+0

如果你有很多值,你不想將它們全部作爲Url參數傳遞,你可以創建一個自定義對象來保存這些值並將它存儲在'Session'中。 – 2009-12-21 08:05:28

+0

如果我使用會話,我該如何將值傳遞給新窗體中的文本框? 下面是如何保持會話中的文件,然後運行下一個表格 session [「prodsSn」] = pSnTextBox.text; session [「purDate」] = purDateTextBox.text.ToString(); response.redirect(「warranty.aspx」); 下一個表單的頁面加載什麼是將會話中的值傳遞到新的文本框的代碼? – Selase 2009-12-21 10:02:03

相關問題