2014-07-21 37 views
0

我想避免用戶輸入任何非數字字符。 這是我的文本字段:HTML5輸入類型模式在Android/Chrome中不起作用

<input id="cvv" name="cvv" type="text" minlength="3" pattern="[0-9]*" required="required" placeholder="000" size="3" maxlength="3"> 

這工作正常,在桌面瀏覽器。但是這不適用於Android/Chrome瀏覽器。任何幫助?謝謝。

+1

您可能會發現下列演示項目:http://jsfiddle.net/trixta/7NEBb/ –

回答

0

移動瀏覽器尚未完全支持HTML 5功能。檢查兼容性here - see Browser Compatibility sectionhere

您可以使用「數字」輸入類型,是從Android的4

<input id="cvv" name="cvv" type="number" required="required" placeholder="000" /> 

您也可以使用JavaScript來驗證使用onkeypress事件或事件的onblur supported

+0

「類型=數字狀態不適用於僅由數字組成的輸入,但嚴格來說不是數字。例如,信用卡號碼或美國郵政編碼是不合適的。「http://www.w3.org/TR/html5/forms.html#number-state-%28type=number%29 –

+0

是的,要求這裏只是數字,而不是信用卡號碼或其他東西。 – Shankar

+0

CVV是一個類似密碼的字符串(只是由數字組成),而不是「嚴格地說是一個數字」。答案中的代碼是無效的:對於'type = number',屬性'size','minlength'和'maxlength'是不允許的。 –

0

Android瀏覽器不需要support版本4.4之前的HTML5表單功能。

要在不支持HTML5功能的瀏覽器上通過模式(和必需)對錶單數據執行客戶端預檢查,您需要使用JavaScript。有很多這樣的庫,但是在這種簡單的情況下,自己編寫代碼可能會更容易。細節取決於所需的錯誤處理。

相關問題