Input type email pattern

В статье рассмотрим некоторые кейсы, связанные с полем email, и подберем шаблон для проверки <input type=email> поля.

Немного теории. Атрибут pattern тега input позволяет использовать регулярные выражения для быстрой валидации значения поля. Результатом валидации поля является присвоение контейнеру input псевдо-классов :valid и :invalid.

Рассмотрим следующий шаблон:

И стиль :invalid

Результат очевиден: eсли поле содержит значение не подходящее шаблону, поле получит красную рамку.

Шаблон не плох, но поле изначально будет иметь статус :invalid, т.к. не учтен кейс, когда значение поля не задано. Также не удобно, что валидация срабатывает сразу, до какой либо активности со стороны пользователя.

Если первое замечание довольно легко поправить, то второе можно реализовать только с дополнительной js обвязкой.

Реализуя первое замечание, приведу еще один вариант шаблона, который мне больше нравится из за своей краткости:

Он менее строгий; а пустое значение — валидное. Очевидно, что приведенные фильтры не соответствует строго спецификациям. А также если поле имеет признак required, то пустое значение всё равно будет расцениваться на :invalid.

Мало букафф? Читайте есчо !

Исправление плагина jquery.jslider.js

Июнь 8, 2017 г.

Использую в одном из проектов замечательный плагин для ввода диапазона значений, который, к сожалению, не поддерживается больше разработчиком. Он содержит ...

Читать

Кнопка Skype на вашем сайте

Февраль 5, 2016 г.

У скайпа раньше был конструктор для создания кода вставки кнопки сервиса "позвонить через скайп" на сайт. После смены владельца (перехода Skype в Microsoft) ...

Читать

Синхронизация публикаций на связанных сайтах в Drupal

Июнь 2, 2010 г.

Краткая предыстория. Задача в общем виде ставилась так: есть каталог продукции на неком головном сайте и ряд шаблонных статей,  которые (и те и другие) являются материалом для наполнения сайтов-сателлитов. На этапе развертывания сайта-сателлита (спутника) ...

Читать

Как изменить значение AUTO_INCREMENT таблицы в MySQL

Август 3, 2022 г.

Наиболее простой ответ - это использование запроса alter, где вы задаёте новое значение для AUTO_INCREMENT нужной вам таблицы: [crayon-6a6cd76f509d2555581120/] Вы можете достичь такого же эффекта изменениями соответствующего столбца вашей таблицы: ...

Читать
 

Комментарии к «Input type email pattern»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: