Использование небольшого количества 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 );
}
});
});