АСП.НЕТ:Показывать информацию о ходе выполнения при сохранении данных в БД

StackOverflow https://stackoverflow.com/questions/862563

  •  21-08-2019
  •  | 
  •  

Вопрос

У меня есть веб-приложение ASP.NET 2.0. Я хочу показывать индикатор прогресса, когда пользователь сохраняет некоторые данные (пример:Редактирование профиля). Я уже использовал jQuery в своем приложении для некоторых побочных эффектов клиента.Как я могу это сделать ?какой-нибудь надежный материал jquery для использования вместе с ASP.NET?заранее спасибо

Это было полезно?

Решение

Хотите ли вы показывать реальный прогресс или просто индикатор занятости во время действия?В первом случае вам понадобится какой-то механизм для записи прогресса сохранения в сеансе и метод проверки состояния прогресса через AJAX.Вы отправляете форму через AJAX, затем периодически вызываете метод проверки, чтобы получать отчеты о ходе выполнения и обновлять любой индикатор на стороне клиента (обычно переключаетесь с одного на другое из серии стандартных изображений или увеличиваете ширину некоторой заполненной «полосы»). ).Это, конечно, сложно.

Если вы хотите сделать последнее, просто отобразите анимированный GIF-изображение, которое является индикатором занятости, пока вы отправляете форму через AJAX из jQuery с помощью обратного вызова beforeSend, а затем скройте индикатор с помощью полного обработчика метода ajax.

$('form').ajax( {
    url: '/updateprofile.aspx',
    type: 'POST',
    data: function() { return $('form').serialize(); },
    beforeSend: function() { $('#indicator').show(); },
    complete: function() { $('#indicator').hide(); },
    success: function(data,status) { alert('Update complete'); }
});

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

Другие советы

Альтернативой показу значимого индикатора прогресса является отображение анимированного GIF-изображения во время сохранения данных, напримервращающийся узор «ромашка», используемый в Firefox.

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

Индикаторы прогресса, которые показывают процент завершения, в любом случае часто бессмысленны, если они действительно не имеют представления, сколько времени займут первые «50%» по сравнению с последними «50%».Другие показатели прогресса более значимы, например.те, которые показывают приращение количества записей и т. д.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top