Показать сообщение отдельно
  #10 (permalink)  
Старый 23.08.2017, 17:00
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от Capitalist
"если браузер не поддерживает нативной" это прямо условие можно такое задать?
Например, поддержку нативной проверки обязательного заполнения поля можно сделать так:

if(!"required" in document.createElement("input")) {
    //нет поддержки, проверка скриптом
}


Но, например, Apple давно забросил поддержку своего Safari под Windows и хотя этот браузер отвечает, что поддерживается "required", в тоже время с чистой совестью отправит форму и пустым таким полем. То есть кроме этого нужно еще и браузер, и ОС проверить.

Сообщение от Capitalist
if(!$.trim(this.value)) - как я понимаю если после удаления пробелов в начале и конце строки, строка не пустая = true
Наоборот, это условие вернет true, если строка пустая (false), то есть сообщение - "Заполнить!".

А если нет, обязательное поле заполнено, то проверка согласно условию заполнения. В случае если условие описывается шаблоном рег. выражения (это можно узнать как this.pattern), то конструктором RegExp создаем объект регулярного выражения и проверяем:

var re = new RegExp(f[i].pattern);
if(!re.this.value)) {
    //значение не соответствует рег. выражению
}


Вот только почему ваш телефон начинается с (XXX), видимо плагин подставляет первую цифру. Если же проверять по pattern, то в нем должен быть описан полный формат номера.
Ответить с цитированием