Событие JQuery ajaxStart не регистрируется в ASP.net AJAX - PullRequest
3 голосов
/ 06 марта 2009

У меня есть страница asp.net с кнопкой сохранения в панели обновлений и шаблонами контента. Сохранение работает хорошо, но я пытаюсь добавить «ждать» gif, пока сохранение происходит с использованием JQuery, но событие ajaxStart не запускается. Я поставил простой улов, показанный ниже:

        $(document).ajaxStart(function(){
            alert('starting');
        }).ajaxStop(function() {
            alert('done');
        });

При нажатии кнопки «Сохранить» оповещения не отображаются. Есть ли проблема при попытке перехвата Ajax-событий ASP.net, если asp выполняет какой-то забавный тип Ajax-вызовов, которые не могут быть перехвачены Jquery?

Спасибо, дайте мне знать, если у вас есть идеи по этому поводу,

Mark.

1 Ответ

10 голосов
/ 06 марта 2009

Панели обновления ASP.NET, кажется, делают свое дело ... Нажмите на PageReuqestManager и настройте свои собственные вызовы здесь ...

EDIT
Ниже я упростил функции, чтобы они немного больше соответствовали вашему образцу ...

    <script type="text/javascript">
        function pageLoad() {
            if (!Sys.WebForms.PageRequestManager.getInstance().get_isInAsyncPostBack()) {
                Sys.WebForms.PageRequestManager.getInstance().add_endRequest(AjaxEnd);
                Sys.WebForms.PageRequestManager.getInstance().add_initializeRequest(AjaxBegin);
            }
        }

        function AjaxEnd(sender, args) {
           alert("I am done...");
        }

        function AjaxBegin(sender, args) {
            alert("I am about to start...");
        }
   </script>
...