JavaScript валидация форм — validity свойство у полей формы. Классовый компонент валидации форм
✏️ Напишем классовый модуль валидации форм, где используем современное свойство DOM-элементов полей ввода — validity, отражающее актуальное состояние всех возникших ошибок в поле ввода. Обсудим влияние HTML-атрибутов required, minlegnth, maxlength, pattern, title и novalidate на браузерную валидацию. Доработаем разметку формы a11y-атрибутами aria-errormessage и aria-invalid. 🔴 Timeline: ▶ 00:00 | Введение ▶ 00:26 | Виды валидаций форм ▶ 00:56 | Подготовка разметки — атрибут required ▶ 01:58 | Подготовка разметки — атрибуты minlength и maxlength ▶ 02:45 | Подготовка разметки — атрибут pattern ▶ 03:38 | Подготовка разметки — атрибут title в связке с pattern ▶ 04:26 | Отключение стандартной браузерной валидации — атрибут novalidate для элемента form ▶ 04:59 | Подготовка разметки — элементы для вывода ошибок, атрибут aria-errormessage ▶ 06:44 | Написание JavaScript-кода валидации формы ▶ 07:14 | Обработка события blur ▶ 09:02 | Логика функции-обработчика события blur ▶ 12:05 | Метод валидации поля validateField — свойство validity ▶ 22:46 | Метод визуального управления ошибками — manageErrors ▶ 26:58 | Улучшаем accessibility поля ввода с кастомной валидацией — атрибут aria-invalid ▶ 29:26 | Обработка события change ▶ 32:46 | Обработка события submit ▶ 41:45 | Заключение 📚 Ссылки: ➖ Код из урока: https://github.com/aleksanderlamkov/js-course ➖ Документация по JavaScript от MDN: https://developer.mozilla.org/ru/docs/Web/JavaScript ➖ Русскоязычный справочник по JavaScript Doka: https://doka.guide/js/ ➖ Фундаментальный онлайн учебник по JavaScript: https://learn.javascript.ru/ 💬 Чат в телеграмме (помощь новичкам): https://t.me/friendlyFrontendChat 🔸 Boosty (поддержать канал): https://boosty.to/friendly-frontend 🗂️ Бесплатные курсы на канале: 🟠 HTML: https://youtube.com/playlist?list=PL0MUAHwery4ot0KmgGxlBSB7rXssLeA6h 🔵 CSS: https://youtube.com/playlist?list=PL0MUAHwery4o9I7QQVj_RP4ZVpmdx6evz 🟡 JS: https://www.youtube.com/playlist?list=PL0MUAHwery4qn4Y27iUxmzC-JiauX7vSL 🟢 A11y: https://youtube.com/playlist?list=PL0MUAHwery4r4gCA3AOtHgArM_UOb2QUV ⚪️ Мастер-класс по верстке для новичков: https://www.youtube.com/playlist?list=PL0MUAHwery4rqkzKF1mDBCIH_eZgjY6uN 🔘 Мастер-класс по верстке для продвинутых (БЭМ, SCSS): https://www.youtube.com/playlist?list=PL0MUAHwery4rdZt-8E9p9zty2ZUCH6Ai3 🗺 Frontend Roadmap 2024 https://youtu.be/1WRJKgwlX9w?si=NjyzbyLMguVV4Frr 📌 Автор: ➖ Личный сайт: https://aleksanderlamkov.ru/ ➖ Telegram: https://t.me/friendlyFrontend ➖ Boosty: https://boosty.to/friendly-frontend ➖ GetMentor: https://getmentor.dev/mentor/aleksandr-lamkov-1480 ➖ Solvery: https://solvery.io/mentor/aleksanderlamkov #frontend #фронтенд #js #javascript