2010-09-18 51 views
2

假設您將數據保存到動態隱藏字段中,該字段是在處理某些回發事件期間動態創建的。回發後的動態hiddenfield

什麼是在回發時從此字段中檢索它的最佳方法(除了搜索此隱藏字段的密鑰請求,然後如下面的代碼中檢索相應的值)?

protected void Button2_Click(object sender, EventArgs e) 
{ 
    bool found = false; 
    for (int i=0; i<this.Request.Form.Keys.Count; i++) 
    { 
     string item = this.Request.Form.Keys[i]; 
     if (item=="Hidden1") 
     { 
      Literal6.Text = Request.Form.GetValues(i)[0]; 
      found = true; 
     } 
    } 

    if (found==false) 
    { 
     Literal6.Text = "Hidden1 is not found"; 
    } 

} 
+1

提示:(找到== false)可以寫成(!found) – 2010-09-18 05:48:33

回答

2

,你可以這樣做:

Literal6.Text = "Hidden1 is not found"; 
    if (Request.Form.HasKeys() && Request.Form.AllKeys.Contains("Hidden1")) 
    { 
     Literal6.Text = Request.Form.GetValues("Hidden1")[0]; 
    } 

,但你也可以使用findControl方法。也就是說,如果一個元素有一個註冊的ID ...忘了說,因爲findcontrol取得了控制ID,並且GetValues通過名字來確定控制。 (這不太可能在你的例子中;)

+0

非常好,謝謝! – alex440 2010-09-18 06:37:57