2011-04-07 90 views
1

我知道它是一個非常常見的問題,但看起來像我的情況有點典型。asp.net textbox value not changing

我確實檢索了頁面加載時要在textbox上顯示的值。

因此無論多少頁面加載發生我都會得到正確的值。

page_load() 
    { 
     TBName.Text = XYZObject.getName(); 
    } 

的事情是:在斷點這個文本顯示正確的值,但是當我繼續下去的網頁,它再次顯示了舊值。

可能是什麼問題???

由於

+0

你能在這裏粘貼這個文本框的html嗎? – 2011-04-07 06:14:48

+0

首先 - 如果頁面加載中的內容相同,請將其放入Post.IsPostBack中......在當前情況下 - 文本框本身是否有任何事件? – sajoshi 2011-04-07 06:16:46

回答

3

的問題是因爲文本框是隻讀的。

0

可以有像另一個函數「clearFields()」被清除文本框。 或getName首先返回字符串,但它返回空,以便清除文本框。

我想是兩種可能性。

0

如果我正確地說明,值不變,但沒有調試,但它調試時調整?
繼續使用F10進行調試,並在手錶窗口中顯示TBName.Text。然後,您可以準確地看到值的哪一行代碼改回。

5

不@ @ @ @ @ @ @,你的情況根本不是典型的。事實上,在我的猜測中,這是asp.net世界中最常見的情況。

你這裏是什麼的情況下,當你打斷點的ViewState裝即適用於控制狀態,你必須由用戶輸入正確的值。最終結果是 - 您在PageLoad上的代碼塊中再次分配的值。

試試這個:

page_load() 
    { 
     if(!IsPostBack)   
      TBName.Text = XYZObject.getName(); 
    }