Предоставляет ли ASP.NET MVC какой-либо способ реализации аналога управления UpdateProgress WebForms?

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

Вопрос

Предоставляет ли ASP.NET MVC какой-либо способ реализации аналога управления UpdateProgress WebForms?Может ли кто-нибудь объяснить мне, как добиться такой функциональности на стороне клиента с помощью MVC?

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

Решение

Использование небольшого количества jQuery и AJAX позволяет сделать это довольно легко (или сложно, если вы хотите сделать что-то сложное).Этот небольшой фрагмент обновляет DIV из метода, который отображает частичное представление в HTML.Сначала он заменяет текущее содержимое сообщением о загрузке, затем обновляет DIV ответом сервера, перезаписывая сообщение о загрузке при возврате данных.Вы можете делать другие вещи, например показывать анимированный GIF-файл, или усложнить задачу и настроить интервальный таймер, чтобы периодически проверять статус длительной активности и использовать индикатор прогресса.Очевидно, что последнее гораздо сложнее.

 $('#myButton').click( function() {
      $('#myDiv').html('Please wait while the data is loaded.');
      $.ajax({
         url: '<%= Url.Action( "action" ) %>',
         data: $('form').serialize(),
         type: 'post',
         dataType: 'html',
         success: function(data,status) {
             $('#myDiv').html( data );
         }
      });
 });
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top