Асимметричная проверка полей формы на ошибки

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

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

Я понимаю, что пароли не совпадают, я ж ещё не допечатал второй! Выводить сообщение об ошибке надо при расфокусе поля или попытке отправить уже всю форму, а не под руку.

Но с другой стороны, не должно возникать бессмысленного состояния экрана, когда мне указывают на уже исправленную ошибку:

Я же ввёл как раз 11 цифр, чё тебе надо? Убирать сообщение об ошибке нужно как только ошибка исправлена, а не когда-то там ещё потом.

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

Подписаться на блог
Отправить
Запинить
Дальше
1 комментарий
Stas Syritsyn 21 ч

Выводить сообщение об ошибке надо при расфокусе поля

Простого расфокуса недостаточно: в случае с паролями со звездочками ошибка инпута толкает человека все оттуда стирать, это лишняя работа. Считаю, что индикатор, что что-то не так со значением второго инпута, должен загораться когда чел ошибся например уже на третьем символе (и соответственно не загораться вообще если во втором инпуте все написано правильно).

Мои книги