.on( "ajaxStart", handler )Возвращает: jQuery
Описание: Регистрирует обработчик, который будет вызываться при начале первого запроса Ajax. Это событие Ajax.
версия добавлена: 1.7.on( "ajaxStart", handler )
Эта страница описывает событие ajaxStart. Для устаревшего метода .ajaxStart(), см. .ajaxStart().
Всякий раз, когда отправляется запрос Ajax, jQuery проверяет, есть ли другие активные запросы Ajax. Если нет, jQuery вызывает событие ajaxStart. В этот момент выполняются все обработчики, зарегистрированные с помощью .on( "ajaxStart", ... ).
Чтобы понаблюдать за этим методом в действии, настройте простой запрос Ajax load:
<div class="trigger">Trigger</div> <div class="result"></div> <div class="log"></div>
Прикрепите обработчик события к любому элементу:
$( document ).on( "ajaxStart", function() {
$( ".log" ).text( "Triggered ajaxStart handler." );
} );Теперь сделайте запрос Ajax с помощью любого метода jQuery:
$( ".trigger" ).on( "click", function() {
$( ".result" ).load( "ajax/test.html" );
} );Когда пользователь нажимает элемент с классом trigger, и отправляется запрос Ajax, сообщение в логе отображается.
Дополнительные заметки:
- Начиная с jQuery 1.9, все обработчики глобальных событий Ajax jQuery, включая те, что добавлены с помощью
.on( "ajaxStart", ... ), должны быть прикреплены кdocument. - Если
$.ajax()или$.ajaxSetup()вызываются с параметромglobalустановленным вfalse, событиеajaxStartне будет вызвано.
Пример:
Отобразить сообщение о загрузке всякий раз, когда начинается запрос Ajax (и ни один не активен).
$( document ).on( "ajaxStart", function() {
$( "#loading" ).show();
} );