Я создаю корпоративный веб-шаблон, который будет использоваться для разработки всех наших веб-приложений. Многие из наших существующих приложений загружаются через некоторое время из-за объема данных и географической удаленности источника данных, поэтому пользователи часто нажимают одни и те же кнопки и ссылки дважды.
Я планирую добавить сообщение Подождите, которое появится при повторной отправке страницы. Я подумал, что есть два очевидных способа сделать это:
1. Инструменты AJAX
Используя AJAX UpdatePanel
и загрузчик прогресса, я могу легко показать сообщение при каждой обратной передаче с очень небольшим дополнительным кодом, если таковой имеется.
Меня беспокоит метод AJAX, так как это очень общий шаблон, мне пришлось бы обернуть всю страницу в панели обновлений. Судя по опыту работы с AjaxToolKit ASP.NET 3.5, панель обновлений влияет на обратные передачи и код JavaScript необычным образом. Кроме того, я думаю, что UpdatePanels тяжелые и увеличивают время, необходимое для загрузки сеанса или приложения.
2. jQuery
Используя jQuery, я могу привязать метод, показывающий сообщение, к каждому $(':submit').click() {}
событию. Страница автоматически скроет сообщение, перезагрузившись в конце сообщения обратно.
У меня нет серьезных проблем с методом jQuery. Для правильной работы с валидаторами полей потребуется дополнительное кодирование. Отсутствие UpdatePanel
также означает, что вся страница перезагружается при каждой обратной передаче, что может быть не лучшим методом. Это также должно быть отложено на несколько секунд, прежде чем появится сообщение «Пожалуйста, подождите», чтобы оно не появлялось для очень небольших событий, для которых такое сообщение не требуется.
Как лучше показать сообщение Подождите или Идет загрузка? Меня беспокоят скорость и надежность, но если есть другие критерии успеха, которые, по вашему мнению, заслуживают внимания, не стесняйтесь говорить об этом.