2012-01-10 54 views
2

我有一個HTML網絡表單( asp.net網絡表單),它將表單提交給aspx腳本。在asp.net中轉發表單提交

aspx腳本上,我想簡單地將表單提交轉發到不同的表單處理腳本。 (使用Request.Form["variable"]檢查一兩件事後)

轉發原始html頁面表單提交的最簡單方法是什麼?

Currently: 
html1 -> aspx1 -> html2 

Desired: 
html1 -> aspx1 -> aspx2 -> html2 
+0

沒有回答這些問題幫助您解決問題? – 2012-01-17 19:14:41

回答

1

我會嘗試用以下方式

  1. 來解決這個問題創建一箇中繼
  2. 設置的Request.Form作爲中繼器的數據源。如果這不起作用,我會將Request.Form轉換爲合適的數據結構,例如用於綁定到直放站的字典或數據表格。每個中繼器項目都會有一個輸入標記,並且會收到相應的名稱/ ID和值。我不會使用服務器控制輸入標記。我會以更有機的方式發出字符串。
  3. 我會發布到第二個aspx頁面。

該轉發器的目的是構建一個等效的FormValueCollection用於在第二個aspx頁面上處理。

參考

0

如果只有簡單的然後它使用se ssion變量。 只需將表單值保存到會話中,然後您可以在特定會話期間在應用程序的任何位置訪問它。

所以,我有我的aspx1頁面像這樣

// ASPX1 page's Page_Load 
protected void Page_Load(object sender, EventArgs e) 
{ 
    if (Request.Form["variable"] == "SomeValue")//some condition 
    { 
     // save these values to session so that they will 
     // be available when I will be in aspx2 page 
     Session["FormValues"] = Request.Form; 

     Response.Redirect("ASPX2.aspx"); // your aspx2 page's link 

    } 

} 

而且aspx2頁面像這樣

// ASPX2 page's Page_Load 
protected void Page_Load(object sender, EventArgs e) 
{ 
    // form values from aspx1 page 
    NameValueCollection formValuesCollection = 
          (NameValueCollection)Session["FormValues"]; 

    string variableValue = formValuesCollection["variable"]; 

    // some processing using form values from aspx1 page 

    Response.Redirect("HTML2.html"); 
} 
+0

Unfortunatley我不能使用這種方法,因爲我不控制第二個表單處理腳本的代碼 – kaes 2012-01-17 20:14:53