Можно ли изменить страницу до AJAX? - PullRequest
1 голос
/ 29 августа 2009

например:

пользователь отправляет комментарий, я добавляю комментарий на страницу с помощью javascript, затем делаю ajax. если сообщение ajax не удалось, сообщите пользователю, что что-то случилось не так.

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

Ответы [ 3 ]

1 голос
/ 29 августа 2009

На самом деле, я бы сказал, что stackoverflow использует эту технику:

  • Убедитесь, что вы используете firebug, и в нижней части экрана браузера отображается консоль
  • Нажмите (например) на стрелку, чтобы набрать голос
  • вы увидите, что стрелка сразу станет оранжевой, что означает, что вы проголосовали)
  • но, глядя на консоль firebug, вы увидите, что запрос Ajax запускается только после того, как стрелка изменила цвет - или, по крайней мере, она еще не завершена, когда стрелка изменила цвет.

Учитывая, что вероятность отказа Ajax-запроса довольно мала, изменение стрелки сразу указывает пользователю, что его голос был учтен ... Даже если это не так до пары миллисекунд; -)

1 голос
/ 29 августа 2009

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

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

Конечно, нет функциональной причины, по которой вы не могли бы сделать это.

0 голосов
/ 29 августа 2009

Да ничто не мешает вам сделать это.

Вы добавляете комментарий в элемент, который вы создаете в публикации данных javascript, и получаете код ответа обратно из сообщения ajax.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...