Как показать ошибку формы и сохранить путь к отправке

Хорошее сообщение об ошибке называет проблему, связывает её с нужным местом и объясняет доступное действие. Но сначала нужно знать состояние отправки. Неверное поле, подтверждённый отказ и потерянный ответ требуют разных продолжений. Если итог неизвестен, нельзя показывать успех или без проверки подталкивать к повторной заявке.
Сначала установи, что произошло
| Состояние | Что известно | Что показать | Чего не утверждать |
|---|---|---|---|
| Ошибка конкретного поля | Значение не прошло согласованную проверку | Поле, понятная причина и способ исправления | Что всё обращение принято |
| Отправка подтверждённо отклонена | Есть достоверный ответ об отказе | Статус и предусмотренный путь исправления или обращения | Что виноват посетитель без установленной причины |
| Результат не получен | Ответ потерян или ожидание прервано | Неопределённый статус и способ уточнить результат | Что заявка не дошла или уже принята |
Сетевой сбой между браузером и сервером может оставить интерфейс без ответа. По одному такому наблюдению нельзя определить, была ли заявка принята. Поэтому путь восстановления согласуй с ответственным за форму: проверить статус, защитить повторную попытку от дубля и дать человеку понятное действие. Не изображай отсутствующий механизм проверки готовой функцией.
W3C WAI рекомендует делать уведомления понятными, указывать соответствующее поле и способ исправления. Общий статус и сообщение возле поля могут дополнять друг друга. Это требование к качеству обратной связи, а не повод показывать человеку технический ответ сервера.
Перепиши сообщение как инструкцию к действию
| Неудачно | Понятнее | Условие использования |
|---|---|---|
| Некорректные данные | Проверь адрес для ответа: нужен полный адрес с именем и доменом. | Проверка действительно установила ошибку этого поля |
| Ошибка 500 | Сейчас не удалось завершить отправку. Используй указанный способ связи или попробуй предусмотренный повтор. | Отказ подтверждён и повтор безопасен по реализации |
| Вы не заполнили форму | Укажи вопрос, чтобы специалист понял, какое пояснение нужно. | Поле вопроса обязательно для обещанного первого ответа |
| Заявка не отправлена | Подтверждение не получено. Статус обращения нужно уточнить. | Итог неизвестен, а не подтверждённо отрицательный |
| Попробуйте ещё раз | Исправь отмеченный адрес и отправь вопрос. | Ошибка поля известна и исправление доступно |
Пиши о действии и данных, не об оценке человека. «Неверно» без причины не помогает. «Мы обнаружили ошибку в ваших данных» добавляет тяжёлый тон без пользы. При этом не обещай сохранить всё автоматически, перезвонить через конкретное время или проверить заявку, если процесс этого не поддерживает.
Технический код нужен журналу диагностики. Посетителю важны состояние и следующий шаг. Если есть безопасный номер обращения к поддержке, его можно показать в согласованном виде; нельзя раскрывать внутренние трассировки, ключи и чужие данные ради подробности сообщения.
Свяжи ошибку с полем и сохрани допустимое
Название в ошибке должно совпадать с видимой подписью поля. W3C WAI описывает программную связь подписей и элементов ввода; такую же связь между полем и пояснением нужно учитывать при реализации доступной формы. Проверяй не только цвет рамки, но и понятность сообщения при работе с клавиатуры и вспомогательных технологий.
После ошибки одного поля не заставляй заново вводить весь вопрос и остальные допустимые данные. Сохранение нужно проверять на фактическом пути: валидация, серверный отказ, возврат к форме. Для чувствительных данных или особых полей могут действовать отдельные ограничения; не объявляй безусловное сохранение любого значения универсальным правилом.
Если есть несколько ошибок, посетитель должен понять их состав и добраться до нужных полей. Не переноси фокус неожиданно во время каждого символа ввода. После отправки проверь понятный переход к ошибке, возможность исправить её и вернуться к кнопке. Конкретное поведение нужно реализовать и протестировать.
Выбери действие по известному состоянию
Как продолжить после ошибки
Развести исправление, восстановление и уточнение результата.
Установлена ошибка конкретного поля
Когда подходит. Проверка однозначно указала поле и причину отказа.
Ограничения. Исправление одного поля не подтверждает успешный приём всего обращения.
Следующий шаг. Покажи причину у нужной подписи, сохрани допустимый ввод и дай исправить значение. Затем проверь фактический результат отправки.
Получен подтверждённый отказ
Когда подходит. Есть достоверный ответ, что операция не завершена, и известен безопасный путь восстановления.
Ограничения. Автоматический повтор и срок ответа не обещаются без реализации.
Следующий шаг. Объясни статус простыми словами. Дай согласованный повтор, исправление или альтернативный контакт и проверь этот маршрут.
Ответ не получен, итог неизвестен
Когда подходит. Отправка началась, но браузер не получил надёжного результата.
Ограничения. Нельзя заключить ни об успехе, ни о гарантированном отсутствии заявки.
Следующий шаг. Сообщи о неопределённости и предложи предусмотренное уточнение статуса. Повтор допускай только с согласованной защитой от дубля.
Ошибка поля: объясни причину и сохрани допустимый ввод. Подтверждённый отказ: дай проверенный путь восстановления. Неизвестный итог: честно обозначь неопределённость и уточни статус перед безопасным повтором. Ни сообщение, ни повторный клик сами по себе не подтверждают приём обращения.
Проверь исправление, а не только появление сообщения
- Отправь пустое обязательное поле: ошибка называет нужное место и объясняет действие.
- Исправь значение с клавиатуры: можно дойти до поля, прочитать причину и снова отправить.
- Проверь несколько ошибок: ни одна не скрыта, допустимые значения не потеряны без необходимости.
- Вызови подтверждённый отказ в тестовой среде: нет ложного экрана успеха, путь восстановления работает.
- Проверь неизвестный итог: статус не изображается как однозначный, повтор не создаёт необоснованный дубль.
- Повтори на телефоне с экранной клавиатурой: сообщение, поле и кнопка доступны.
- Сопоставь конечный экран с фактическим принятым обращением или установленным отсутствием результата.
В конструкторе Кирпича можно настраивать содержание и поля виджета. Конкретные сообщения, сохранение ввода и восстановление после сбоя должны быть проверены в собранной форме. Наличие редактируемых полей не подтверждает все эти состояния автоматически.

Источники и документация
- User Notification · проверено 11.10.2026
- Labeling Controls · проверено 11.10.2026
- Аналитика с ИИ для B2B-сайтов · проверено 11.10.2026