Input type email pattern

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

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

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

И стиль :invalid

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

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

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

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

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

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

Восстанавливаем объект из состояния __PHP_Incomplete_Class_Name

Декабрь 13, 2014 г.

Объект класса "__PHP_Incomplete_Class" с дополнительным свойством __PHP_Incomplete_Class_Name => 'имя класса' появляется, когда PHP не удается найти объявление класса при операции десериализации объекта. К примеру, такое может происходить при хранении ...

Читать

Подключение внешних файлов библиотек в Drupal *.libraries.yml

Апрель 7, 2024 г.

При объявлении библиотек вы можете подключать не только локальные, но и внешние файлы. Для этого нужно указать тип библиотеки - external. Например: [crayon-6967106435192660977774/] О полном списке допустимых атрибутах читайте в документации.

Читать

Как удалить объявленный ранее @RestResource

Июль 12, 2023 г.

Сначала вы создали в Drupal rest ресурс - /Plugin/rest/resource, поработали с ним, а потом пришло время прощаться. Но вот проблема - система уже знает о ресурсе, и если вы удалите файл, то при попытке зайти в админ панель расширений /admin/modules, вы ...

Читать

Apache: переадресация на другой домен

Май 19, 2020 г.

Задача переадресации пользователя с одного домена на другой возникает весьма часто. Разберем как это выглядит в контексте настроек сайта на веб-сервере на базе Apache. Задача состоит в том, чтобы все запросы обращенные к домену site1.ru направить ...

Читать
 

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

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



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