Я отправляю запрос AJAX, чтобы обновить страницу блога сообщениями, относящимися к определенной категории. Как сообщить пользователю, что его запрос не выполнен? Должен ли я точно сказать ему, почему это не удалось (ошибка, потеря интернет-соединения и т. д.)?

Вот кнопки состояний:

Исходный: введите здесь описание изображения Переход (обе кнопки белые, пока не получим ответ от сервера): введите здесь описание изображения Успешный: введите здесь описание изображения


Не слишком ли тонко просто покрасить кнопку в красный цвет на 2 секунды, а затем вернуться в исходное состояние? Что делать вместо этого? введите здесь описание изображения

По умолчанию на странице есть последние сообщения (ВСЕ), и когда пользователь выбирает другую категорию, все сообщения удаляются и заменяются сообщениями из определенной категории.

Мой клиент — фотограф, поэтому, если посетителя сайта интересуют только свадьбы, он должен иметь возможность сортировать посты в блоге только для свадеб.

Если это не удается, старые сообщения остаются на странице.

1
Open up 21 Сен 2017 в 19:39
Итак, как только они нажимают кнопку, и она не работает, как выглядит контент ниже? У вас есть более широкая картина?
 – 
Mike M
21 Сен 2017 в 16:33
Можете ли вы дать больше информации о вашем приложении. Зачем пользователям постоянно обновляемые категории? Что они ищут? Часто ли обновляются категории и как часто?
 – 
Kristiyan Lukanov
21 Сен 2017 в 17:11
Какую неудачу вы пытаетесь исправить? Отсутствие сообщений в этой категории из-за невозможности получить сообщения, которые невозможно восстановить?
 – 
DarrylGodden
21 Сен 2017 в 18:22
Я обновил свой вопрос
 – 
Open up
21 Сен 2017 в 19:39

1 ответ

Лучший ответ

Как и при любой другой ошибке, объясните пользователю, что произошло, и в идеале дайте ему путь к восстановлению, если это возможно.

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

Кнопка исправна; это состояние системы в результате нажатия кнопки.

Я не знаю, как выглядит остальная часть представления, но вот снимок, на котором ошибка заметно видна в области, которую я предполагаю (поправьте меня, если я ошибаюсь), которую они хотят загрузить своим выбором:

mockup

загрузить исходный код bmml — Каркасы, созданные с помощью Мокапы Balsamiq

Вы можете прочитать: рекомендации по сообщениям об ошибках, от Нильсена Нормана:

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

В вашем макете выше вы используете цвет в качестве единственного индикатора. Это заставляет дальтоников думать, что кнопка находится в активном состоянии (например, она нажата), поскольку они могут не видеть красный цвет.

Попробуйте значок и полезное сообщение об ошибке. Это должно быть заметно.

Пользователи захотят понять, что произошло, и как двигаться дальше (если смогут). Определите, что это за ошибка.

Помните, когда пользователи не видят никаких изменений на странице или когда содержание ниже исчезает, они могут спросить себя:

  • что случилось?
  • это была моя вина?
  • если это системная ошибка, когда она исправится?
  • нет ли сообщений в блоге «Природа»? (что означает, что нет результатов отличается от сбоя загрузки; это не ошибка)
  • что я сейчас делаю?
3
Community 16 Июн 2020 в 13:51