html控件无法使用的属性值,用 Enabled 和 disabled 属性禁用 HTML 控件后,取值结果...
ASP.NET 中,對于服務器端控件,可以用?ASP.NET 代碼用?Enabled 屬性將其禁用,也可以用 JavaScript?的?disabled 屬性將其禁用,那么這兩種方法有沒有什么區別呢?
沒有區別。
只要控件一禁用,不管是用哪種方法禁用的,其輸入狀態即被保護,不可輸入,即使通過 JavaScript 改變控件值,也沒有用,因為禁用的控件值是不被提交到服務器端的,用 JavaScript 改變控件值,其值又沒有提交到服務器端,有什么意義呢。
那么服務器端為什么會接收到值呢?
這是因為啟用了 ViewState(默認啟用的),所以值是 ViewState 的值,說白一點,就是 ASP.NET 給控件賦值時賦了兩份值:一份是在 ViewState 中,一份是在控件中。如果控件可用,就用控件的值,這種情況下表示接受用戶輸入的值。
如果控件不可用,就用 ViewState 的值。
如果沒有啟用 ViewState 呢?
那 ASP.NET 還有最后一個地方可以取值。比如:
從標簽賦值的 Text 屬性取值。
前面說的取值是指用控件屬性取值,比如 _t1.Text,如果是用 Request.Form 取值呢?
那么這種情況下,總是取不到值,因為 Request.Form 不會利用 ViewState,也不認標簽賦值的 Text 屬性。
還有一種情況,服務器端用 Enabled 禁用了控件,但前端 JavaScript 用 disabled 讓控件可用,這時候用戶輸入的值,服務器端可以收到嗎?
可以。
總結
以上是生活随笔為你收集整理的html控件无法使用的属性值,用 Enabled 和 disabled 属性禁用 HTML 控件后,取值结果...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 华为鸿蒙运行视频,某游戏在华为鸿蒙运行,
- 下一篇: html的后绑定事件,HTML 控件绑定