夢想飛翔

          自強不息
          posts - 111, comments - 30, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          Readonly和Disabled的區別

          Posted on 2007-08-10 14:05 love1563 閱讀(293) 評論(0)  編輯  收藏 所屬分類: JSP/Servlets/JSF
          Readonly和Disabled是用在表單中的兩個屬性,它們都能夠做到使用戶不能夠更改表單域中的內容。但是它們之間有著微小的差別,我在實踐中得到了一些規律,總結如下:
          Readonly只針對input(text / password)和textarea有效,而disabled對于所有的表單元素都有效,包括select, radio, checkbox, button等。但是表單元素在使用了disabled后,當我們將表單以POST或GET的方式提交的話,這個元素的值不會被傳遞出去,而readonly會將該值傳遞出去(這種情況出現在我們將某個表單中的textarea元素設置為disabled或readonly,但是submit button卻是可以使用的)。
          一般比較常用的情況是:
          ①在某個表單中為用戶預填了某個唯一識別代碼,不允許用戶改動,但是在提交時需要傳遞該值,此時應該將它的屬性設置為readonly
          ②經常遇到當用戶正式提交了表單后需要等待管理員的信息驗證,這就不允許用戶再更改表單中的數據,而是只能夠查看,由于disabled的作用元素范圍大,所以此時應該使用disabled,但同時應該注意的是要將submit button也disabled掉,否則只要用戶按了這個按鈕,如果在數據庫操作頁面中沒有做完整性檢測的話,數據庫中的值就會被清除。如果說在這種情況下用readonly來代替disabled的話,若表單中只有input(text / password)和textarea元素,那還是可以的,如果存在其他發元素,比如select,用戶可以在重新改寫值后按回車鍵進行提交(回車是默認的submit觸發按鍵)
          ③我們常常在用戶按了提交按鈕后,利用javascript將提交按鈕disabled掉,這樣可以防止網絡條件比較差的環境下,用戶反復點提交按鈕導致數據冗余地存入數據庫。
          主站蜘蛛池模板: 昌吉市| 岢岚县| 大兴区| 饶平县| 长兴县| 余干县| 和林格尔县| 大化| 建瓯市| 苍南县| 桓仁| 晋江市| 凭祥市| 宁河县| 盘山县| 广饶县| 清涧县| 鲜城| 平安县| 鹤庆县| 资兴市| 天长市| 调兵山市| 若羌县| 壤塘县| 潜江市| 平潭县| 历史| 洞口县| 虎林市| 闸北区| 青川县| 博兴县| 沁水县| 屯昌县| 山阳县| 紫云| 收藏| 图们市| 贺州市| 神木县|