禁用viewstate怎麼還儲存狀態?

2022-08-28 10:24:15 字數 917 閱讀 8506

下列伺服器控制項不能禁止viewstate 

textbox 

checkbox 

checkbox list 

radiobuttonlist 

上面控制項的狀態通過ipostbackeventhandler 和 ipostbackdatahandler介面處理,而不是viewstate的機制,所以enableviewstate沒有效果。

舉乙個例子

//伺服器控制項

//html控制項,但是加了伺服器標識

//html控制項

點選按鈕,

發現第乙個伺服器控制項,第二個加了伺服器標識的html控制項,頁面回傳時值沒有變化,而第三個純html控制項值被清空,即回到初始值,這種情況使我們早就料到的,於是我們繼續嘗試著,對伺服器控制項試用enableviewstate="false",再來看結果

點選按鈕,

這個結果真是讓我們失望,很明顯我已經禁用viewstate,理應該是三個控制項值都為空,即都回到初始值,考察資料得到

viewstate 是不負責儲存諸如 textbox等這些繼承自 ipostbackdatahandler 介面的控制項的值的更改的。

簡單的說繼承自 ipostbackdatahandler 介面的控制項的值由控制項自身控制儲存,而與enableviewstate=false沒有關係,前台頁面__viewstate的值是控制項自身控制寫入_viewstate的.具體見

大概如下圖 

在微軟的幫助文件中得知(

也就是說通常情況下類似textbox傳送到伺服器的屬性由 ipostbackdatahandler 介面來處理,不管viewstate有沒有禁止,它都會在回傳時往裡面填值,當然這個值是來自http 提交頭里

禁用viewstate怎麼還儲存狀態?

下列伺服器控制項不能禁止viewstate textbox checkbox checkbox list radiobuttonlist 上面控制項的狀態通過ipostbackeventhandler 和 ipostbackdatahandler介面處理,而不是viewstate的機制,所以enab...

車隊管理做不好這幾點,還怎麼掙錢?

管理車隊說難很難,說簡單也很簡單,無非就是做好管車和管人這兩方面。基礎管理 管人主要是招人和留人,招人難,而且招進來的司機質量不高也是普遍情況。留人更難,要留住司機,公司所提供的各方面待遇要有所保障,但又要和公司利益取乙個平衡點。管車就更繁瑣了,目前很多公司在管車用車上是粗放型管理,不僅不了解什麼線...

還搞不懂怎麼建站?看這篇就夠了

伺服器 1 可編寫並構建war包的ide 這邊博主用的是netbean 安裝完畢後 雙擊安裝路徑下的 bin目錄下的startup.bat 彈出下圖所示黑視窗 只要你想訪問部署在tomcat伺服器上的 這個黑視窗就要保持一直開啟的狀態 在自己編寫的專案上,點選構建按鈕 在輸出框可以看到構建成功和構建...