2013-03-18 58 views
-1

我有一個文本框,編程方式我將它設置爲'Enabled = false'。當此頁面在更改後獲得回發時,此文本框將啓用的值返回爲true。爲什麼?ASP.NET:文本框丟失在回發啓用的值

我將文本框放入updatepanel中。

+0

您是否在Page_Load事件中設置了代碼隱藏? – David 2013-03-18 13:52:35

+1

請添加一些代碼和標記。 – 2013-03-18 13:53:04

+6

因爲這不是正常的行爲,所以它可能是你代碼中的東西。因爲你沒有提供任何代碼 - 沒有辦法來幫助你... – Blachshma 2013-03-18 13:53:36

回答

0

在Page_Load,執行以下操作:

If (IsPostBack) Then 
    Textbox1.Enabled = False 
End If 
+0

但是這個文本框沒有被啓用= false,當其他文本框觸發事件「textchanged」時,我切換該屬性,如果觸發該事件的文本框有特定值,我將其他文本框更改爲禁用。 – FCarrasco 2013-03-18 18:31:49

2

如果你在代碼隱藏在Page_Load事件中設置它,你需要記住的Page_Load甚至在回發發生。你有兩個選擇。

將它放在一個塊中,該塊檢查頁面是否爲回發。

if(!Page.IsPostBack) 
{ 
    TextBox1.Enabled = false; 
} 

或將其設定在Page_Init

如果您還不熟悉它,請確保您瞭解頁面生命週期。這是ASP.NET開發人員必須瞭解的信息。請閱讀http://msdn.microsoft.com/en-us/library/ms178472(v=vs.100).aspx

+0

我明白你,但是,這個文本框永遠不會被啓用= false,當其他文本框觸發事件「textchanged」時,我切換此屬性,如果啓動事件的文本框具有特定值,我將其他文本框更改爲禁用。 也許我只是評估條件的任何方式,我得到一個回傳...但這種情況下有很多數據庫查詢,可以減緩回發 – FCarrasco 2013-03-18 18:32:34

相關問題