JavaScript валидация форм — validity свойство у полей формы. Классовый компонент валидации форм
TIP! Right-click and select "Save link as..." to download.
✏️ Напишем классовый модуль валидации форм, где используем современное свойство 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