Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Ограничить длину input двумя значениями (https://javascript.ru/forum/jquery/56219-ogranichit-dlinu-input-dvumya-znacheniyami.html)

Laroux 05.06.2015 13:38

Ограничить длину input двумя значениями
 
Задача такая: надо, чтобы в поле ввода можно было ввести только 10 или 12 символов. Причем только цифры (возможно с ведущими нулями).

Как ввести только цифры - нашел, разобрался.
Как ввести не более определенного количества символов - тоже понятно..

а вот как сделать только 10 или 12, да еще и только цифры - не хватает тямы.

Заранее благодарен

Rise 05.06.2015 14:19

Laroux, /^(\d{10}|\d{12})$/

Laroux 05.06.2015 14:47

Спасибо, Rise. А как бы это обернуть в код?:(

Rise 05.06.2015 15:07

Laroux, атрибут pattern

Laroux 05.06.2015 15:48

Ах, действительно... а я хотел, правда, чтобы это было на лету при вводе, ну ничего и так прокатит..

Кстати, pattern="/^(\d{10}|\d{12})$/" - ничего не пропускает.. ни 10 цифр, ни 12

Laroux 05.06.2015 15:51

эм.. надо было просто pattern="^(\d{10}|\d{12})$"

Извините, спасибо большое за помощь

sogoodweather 10.06.2015 00:39

Rise,
Странный, однако, этот атрибут. Ставим, например шаблон, \d+...\d+. Он начинает подсвечивать ( тестил в FF) начиная с первого нецифрового символа. Затем, после совпадения шаблона подсетка пропадает. С точки зрения пользователя это нонсенс. Пользователь может при вводе первого нецифрового символа, решить, что введенная до этого строка неверна, и начать сначала. В случае ТСа, кстати, нечто подобное. Головы надо отрывать козлам за такое:)


Часовой пояс GMT +3, время: 06:58.