MVC3 запускает действие контроллера из представления - PullRequest
0 голосов
/ 15 марта 2012

У меня есть действие controller, которое создает PDF-файл и затем загружает его пользователем.

Отлично работает, но занимает few seconds. Мне бы хотелось, чтобы на экране загрузки лендинга было что-то вроде "работает над вашим документом ... подождите" Мы возились с некоторыми скриптами, такими как .blockUI(), но это не то, что хотят боссы.

Итак, у меня есть целевая страница, которая прекрасно работает, но если я попытаюсь запустить

 @Html.Action("SlowAction", "Controller", routeVals) 

представление не отображается, пока не завершится "SlowAction". Который в значительной степени уничтожает цель целевой страницы.

По сути, я хочу, чтобы представление Landing отображало ТО, что вызывает действие контроллера "SlowAction". Возможно, какой-нибудь сценарий, который будет считать до 10 Миссисипи, затем вызовет действие? К сожалению, я очень мало знаю о скриптах java / ajax.

1 Ответ

1 голос
/ 15 марта 2012
$.ajax({
    type:'GET',
    url: '@Url.Action("ActionName", "ControllerName")',
    async:true,
    success:function(response){
        //Do Something With response object returned by your action
    }
});

Посмотрите документацию по ajax для ajax, расположенную здесь http://api.jquery.com/jQuery.ajax/

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