我正在嘗試編寫regex
以在<input>
字段中使用,其中接受0到60之間的數字。這是一個我現在有:接受0到60之間的數字,但不允許前導零
<input type="number" min="0" max="60" pattern="^([0-5]?[0-9]|60)$">
它工作正常,但問題是,像02
投入不應該被驗證。你知道如何改善這種表達?
在此先感謝您的答覆!
我正在嘗試編寫regex
以在<input>
字段中使用,其中接受0到60之間的數字。這是一個我現在有:接受0到60之間的數字,但不允許前導零
<input type="number" min="0" max="60" pattern="^([0-5]?[0-9]|60)$">
它工作正常,但問題是,像02
投入不應該被驗證。你知道如何改善這種表達?
在此先感謝您的答覆!
如果你不想接受02
,爲什麼你把這樣的規則放在你的模式中?
正確的是:^([1-5]?[0-9]|60)$
也,如上面提到的意見,pattern
屬性不type=number
工作 - 使用text
代替(支持包括:文本,日期,搜索,網址,電話,電子郵件地址和密碼)
謝謝!我實際上已經嘗試過,甚至用'type =「number」'它正常工作 –
<input type="text" min="0" max="60" pattern="^([1-5]?[0-9]|60)$">
請注意,這也將接受「0」。這是所需的行爲?
'input type = number'不允許pattern屬性 – pwolaq
你是對的。它應該是type =「text」。我會改變它。 –
使用'type =「text」',否則'pattern'將被忽略。您也可以省略模式中的'^'和'$',因爲HTML5模式默認爲錨定。所以,你想禁止前導零,你呢?然後使用' –
02不應該被驗證? – Prathyush
爲什麼你甚至不允許前導零?只需將它們放在服務器端,即將其轉換爲整型,然後它們自動消失。 – tkausl