Журнал • знания • практикаПоиск по сайту

Сайты, дизайн и самостоятельная работа

Найти материал →

Как оформить ошибки валидации формы рядом с соответствующими полями интерфейса

5 минут чтения

Как оформить ошибки валидации формы рядом с соответствующими полями интерфейса

Ошибку валидации размещайте непосредственно рядом с полем, которое нужно исправить, и называйте конкретное действие: например, "Введите адрес электронной почты в формате name@example.com". Показывайте сообщение в подходящий момент, не полагайтесь только на цвет и связывайте текст с полем программно. Перед запуском проверьте поведение формы при вводе, отправке, исправлении ошибки и на мобильном экране.

Проверка перед выводом ошибки у поля

  • Понятно, какое именно поле вызвало сообщение.
  • Текст объясняет, что исправить, а не просто сообщает о проблеме.
  • Момент показа соответствует сценарию заполнения формы.
  • Сообщение доступно с клавиатуры и скринридера, а не только визуально.
  • После исправления ошибка исчезает или обновляется, а форма сохраняет введённые данные.

Свяжите сообщение с полем, которое нужно исправить

Такое решение подходит для форм с несколькими полями, в которых пользователь может не сразу понять, где допущена ошибка. В дизайн формы сайта включайте сообщение в визуальную группу соответствующего поля: рядом с подписью или под полем, в одном и том же месте по всей форме.

Не выводите сообщение рядом с полем, если проблема относится ко всей форме: например, когда отправка временно недоступна. Для такой ситуации используйте отдельное общее уведомление и, если возможно, укажите причину и дальнейшее действие.

Выберите момент показа ошибки: при вводе или после отправки

До проектирования определите правила валидации формы на сайте: какие значения считаются корректными и в какой момент их проверять. Для этого понадобятся доступ к макетам и логике формы, перечень обязательных полей, согласованные тексты сообщений и возможность проверить состояния на тестовой версии сайта.

UX дизайн форм обычно сочетает несколько моментов проверки:

  • При отправке: проверьте все поля и покажите сообщения у тех, которые требуют исправления.
  • После взаимодействия с полем: можно проверить его после ухода фокуса, если правило понятно и ранняя подсказка не мешает вводу.
  • Во время ввода: используйте для оперативной обратной связи, когда проверка не прерывает набор и не объявляет ошибку после каждого символа.

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

Разместите текст так, чтобы он не сдвигал форму неожиданно

Перед пошаговой настройкой проверьте подготовку:

  • Для каждого поля определены обычное, ошибочное и исправленное состояния.
  • Сообщения проверены на длину и понятность.
  • Предусмотрено место для текста ошибки в макете.
  • Известно, как форма ведёт себя при нескольких ошибках одновременно.
  1. Объедините поле и сообщение. Разместите ошибку рядом с соответствующим полем, предпочтительно непосредственно под ним. Визуальная близость должна сохраняться при изменении ширины экрана.
  2. Зарезервируйте место или задайте предсказуемое расширение. Если высота формы не должна меняться резко, предусмотрите область для сообщения в макете. Если форма растёт по высоте, убедитесь, что соседние поля и кнопки сдвигаются последовательно, без наложения.
  3. Покажите ошибку без потери введённых данных. После неудачной отправки сохраните корректно заполненные значения. Переводите фокус к первому полю с ошибкой или к сводке ошибок, если это помогает быстро найти проблему.
  4. Обновите состояние после исправления. Уберите сообщение, когда значение стало корректным, либо сообщите об успешной проверке, если это нужно для понимания процесса. Не оставляйте устаревшую ошибку после изменения поля.
  5. Проверьте несколько ошибок вместе. Убедитесь, что длинные сообщения не перекрывают другие элементы и не отодвигают кнопку за пределы ожидаемой области без возможности прокрутки.

Подберите формулировку, которая объясняет способ исправления

Проверьте каждое сообщение по списку:

  • Указано, что именно не так: "Поле не заполнено".
  • Понятно, какое действие нужно выполнить: "Введите номер телефона".
  • Для формата приведён ориентир: "Введите дату в формате ДД.ММ.ГГГГ".
  • Нет неопределённых фраз вроде "Неверные данные" без пояснения.
  • Текст не обвиняет пользователя и не использует внутренние коды ошибки.
  • Сообщение не раскрывает чувствительные сведения и не повторяет секретное значение.
  • Инструкция соответствует фактическим правилам проверки.

При разработке формы обратной связи проверьте отдельные тексты для обязательного имени, некорректного адреса электронной почты и недоступности отправки. Например: "Проверьте адрес электронной почты" и "Не удалось отправить сообщение. Попробуйте ещё раз".

Сохраните доступность для скринридеров и клавиатурной навигации

Визуальное оформление помогает заметить проблему, а доступность зависит также от разметки и поведения формы. Проверьте, чтобы:

  • Ошибка обозначалась не только красным цветом: добавьте текст и, при необходимости, значок.
  • Поле имело программно связанную подпись, а сообщение было связано с ним средствами разметки.
  • Для ошибочного поля задавалось соответствующее состояние доступности, например aria-invalid="true".
  • При появлении сообщения скринридер мог получить его без необходимости искать текст визуально.
  • После отправки фокус перемещался предсказуемо и не перескакивал бесконтрольно между ошибками.
  • Все поля и действия были доступны с клавиатуры, а фокус оставался заметным.
  • Исправление значения обновляло состояние ошибки и его доступное объявление.

Проверьте ошибки на мобильном экране и при разных состояниях формы

Выберите способ показа с учётом длины формы, типа ошибки и устройства:

  • Текст под каждым полем. Подходит для локальных ошибок, которые можно исправить сразу. На узком экране проверьте переносы и расстояние до следующего элемента.
  • Сводка ошибок в начале формы вместе с сообщениями у полей. Уместна в длинной форме: сводка помогает оценить объём исправлений, а локальные тексты показывают, что сделать у каждого поля.
  • Краткое сообщение после ухода с поля. Подходит, когда проверка помогает избежать ошибки при отправке. Не показывайте его до начала взаимодействия с полем.
  • Общее уведомление для ошибки отправки. Используйте, если проблема не относится к конкретному полю; сообщите, можно ли повторить действие и сохранены ли введённые данные.

Проверьте ошибки в макете и на реальном устройстве: при увеличенном тексте, открытой экранной клавиатуре, длинных сообщениях и нескольких ошибках одновременно. Так ошибки валидации формы дизайн не только обозначает, но и помогает исправить.

Нюансы отображения ошибок у полей формы

Где лучше размещать текст ошибки?

Обычно - непосредственно под соответствующим полем, чтобы связь была очевидной. Для ошибок всей формы используйте отдельное общее уведомление.

Нужно ли показывать ошибку сразу при вводе?

Не обязательно. Проверяйте поле после взаимодействия с ним или при отправке; мгновенную проверку используйте только тогда, когда она не мешает набору.

Как показывать ошибку обязательного поля?

Покажите её после попытки отправки или после взаимодействия с полем. Формулировка должна прямо объяснять действие, например: "Заполните это поле".

Нужно ли дублировать ошибки в сводке?

Для длинной формы сводка может помочь увидеть все проблемы, но она не заменяет сообщения рядом с полями. Ссылки в сводке можно связать с соответствующими полями.

Можно ли обозначать ошибку только цветом?

Нет: добавьте текстовое сообщение, чтобы проблему можно было понять без различения цвета. Также проверьте, что ошибочное состояние доступно скринридеру.

Что делать, если форма не отправилась из-за технической проблемы?

Покажите общее уведомление, не привязанное к отдельному полю. Объясните, можно ли повторить отправку и сохранились ли введённые данные.

Нужно ли очищать поле с ошибкой после неудачной отправки?

Не очищайте корректно введённые данные без необходимости. Для чувствительных значений учитывайте требования безопасности и объясняйте, если их нужно ввести повторно.

Автор: Ирина Белова

Scroll to Top