Помогите написать простое условие для поля input
Есть форма в которой input с маской
$("#form1tel").mask("+7 ( 999 ) 999 - 99 - 99"); если при отправки номер введен не весь то он просто сбрасывается! Нужно что бы при отправке номер проверялся,если он веден не полностью,то поле не сбрасывается и появляется сообщение вроде "Введите корректно номер") Помогите плз! |
.mask() - это что за метод? Плагин какой-то используется?
|
Цитата:
|
И что он не может проверить корректен ли ввод? Что же он тога делает?
|
Возможно и может но как я не знаю
|
Значит надо открывать документацию плагина и читать о его методах, а иначе для чего он у вас, для красоты? Вот без скриптов и плагинов, работа HTML5, тоже проверка номера по вашему шаблону (пробелы только излишние убраны). Попробуйте отправить неполный номер:
<form> <input required="" pattern="^\+7\s\(\d{3}\)\s\d{3}-\d{2}-\d{2}$" /> <button>Send</button> </form> Тоже самое и плагин вами подключенный должен выполнять. |
Вложений: 1
Это да,но мне нужна вот такая маска,именно ее мне дает плагин
|
Да пожалуйста:
<input required="" pattern="^\+7\s\(456\)\s\d{3}-\d{2}-\d{2}$" /> Нужно что бы при отправке номер проверялся,если он веден не полностью Не полностью, это означает не все его составляющие, а не ввели 999 вместо 456. Так что у вас за проблемы на самом деле? |
http://koval0.pe.hu/rar2/index.html
Вот мой сайт,справа форма первый input сделал как вы мне сказали а второй как должно быть,только она сбразывается |
Я в таких случаях вешаю дополнительную валидацию,
вот эту вот люблю https://github.com/posabsolute/jQuery-Validation-Engine если надо у меня есть минимизированный скрипт |
мне нужна вот такая маска +7 (456)
Однако в подсказке о 456 и намека нет. Ну ладно, бог с ним. ^\+7\s\(456\)\s\d{3}-\d{2}-\d{2}$ - это паттерн, по которому браузер с поддержкой HTML5 сам проверит корректность ввода, а не для того, чтобы вы это вставляли как параметр для плагина, я понятия не имею каким образом ему надо задавать параметры. Читайте документацию его. |
Валидация формы и маска для телефона
Sergey_Koval,
вариант :write: <!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> .error{ display: none; color: #FF3300; margin: 0 5px; } </style> </head> <body> <form action="http://javascript.ru/forum/" class="form"> <input size="21" class="tel"><p class="error"></p> <input type="submit" value=" OK "> </form> <script> var tel = document.querySelector('.tel'), err = document.querySelector(".error"), form = document.querySelector(".form"); function setCursorPosition(pos, elem) { elem.focus(); elem.setSelectionRange(pos, pos); } function proverka(el) { err.style.display = "none"; var matrix = "+7 ( 456 ) 999 - 99 - 99", i = 0, val = el.value.replace(/\D/g, ''); val.length < 4 && (val = "7456"); matrix = matrix.replace(/\d/g, function(a) { return val.charAt(i++) || "_" }); el.value = matrix; i = matrix.lastIndexOf(val.substr(-1)); i < matrix.length && i > 7 ? i++ : (i = 11) setCursorPosition(i, el) return i == matrix.length }; tel.oninput = tel.onfocus =function() { proverka(tel); } tel.onfocus = function() { setCursorPosition(11, tel); } tel.oninput(); function validate() { err.style.display = "none"; var ok = proverka(tel); !ok && (err.style.display = "inline-block", err.innerHTML = "Введите корректно номер"); return ok } document.forms[0].onsubmit = validate </script> </body> </html> |
Часовой пояс GMT +3, время: 01:03. |