如何禁止input文字框輸入
nput文字框用於接收使用者輸入的資訊,我們有兩種方法可以禁止input文字框,一種方法是使用readonly,另一種方法是使用disabled,但二者之間還是有區別的,請看下面講解。
readonly禁用input文字框
readonly表示此域的值不可修改,僅可與 type="text" 配合使用,可複製,可選擇,可以接收焦點,後臺會接收到傳值.
程式碼如下:
<input type="text" name="" readonly="readonly" />
disabled禁用input文字框
disabled表示禁用input元素,不可編輯,不可複製,不可選擇,不能接收焦點,後臺也不會接收到傳值
<input type="text" name="" disabled="disabled" />
[html] view plain copy 在CODE上檢視程式碼片派生到我的程式碼片
<html>
<title>
</title>
<body>
html禁止input文字框輸入:
<br>
readonly:<input type="text" readonly="true" value="abc"/>
<br>
disabled:<input type="text" value="bcd" disabled="disabled" />
<br>
maxlength:<input type="text" value="" maxlength="0" />
<br>
blur:<input type="text" onfocus="();">
<br>
</body>
</html>
HTML中禁止自動完成和禁用輸入法收藏
IE提供了一個自動完成功能可以記憶我們的輸入內容(如登入帳號等),方便下一次快速地錄入類似資料.這確實是一個非常友好的功能, 在操作時只需用滑鼠雙擊文字框或輸入前幾個字元, 系統會自動列出以前的`錄入歷史供你選擇, 大大提高錄入速度及準確性. 相信大多數IE的使用者都啟用了這項功能.
然而做為網站開發者來說, 並不希望什麼資料都記憶在使用者的電腦上(如銀行帳號和其它重要的帳號及密碼), 但是我們又不能要求使用者禁用自動完成的功能. 幸好IE5.0後為 INPUT type=password, INPUT type=text, FORM 等控制元件加入了一個 AUTOCOMPLETE的屬性,要禁止控制元件自動完成功能,只需把AUTOCOMPLETE設為off即可,如:
整個表單禁止自動完成
<FORM method=post action="" AUTOCOMPLETE="OFF">
禁止文字框自動完成
<input type="text" name="creditcard" maxlength="16" AUTOCOMPLETE="OFF">
在指令碼中禁止自動完成
function init()
{
ttribute("AutoComplete", "off");
}
另外,如果要禁止文字框使用輸入法,可以把在它的樣式中新增 ime-mode : disabled 即可,但是這樣並不能禁止輸入漢字,因為使用者還是可以通過複製貼上輸入漢字的.如:
<input type=text style="ime-mode: disabled ; ">
微軟的 PASSPORT 就是這樣實現的,但是因該還會有其它的方法,因為在YAHOO 和 GMAIL的實現方法就不一樣。