.on( "ajaxSuccess", handler )Возвращает: jQuery
Описание: Присоединяет функцию, которая будет выполняться всякий раз, когда успешный Ajax-запрос завершается. Это событие Ajax.
-
версия добавлена: 1.7.on( "ajaxSuccess", handler )
- "ajaxSuccess"Тип: строкаСтрока
"ajaxSuccess". - handlerФункция, которая должна быть вызвана.
-
Эта страница описывает событие ajaxSuccess. Для устаревшего метода .ajaxSuccess(), см. .ajaxSuccess().
Всякий раз, когда Ajax-запрос завершается успешно, jQuery вызывает событие ajaxSuccess. В этот момент выполняются все зарегистрированные обработчики ajaxSuccess.
Чтобы наблюдать за этим методом в действии, настройте базовый Ajax-запрос на загрузку:
<div class="trigger">Trigger</div> <div class="result"></div> <div class="log"></div>
Присоедините обработчик событий к любому элементу:
$( document ).on( "ajaxSuccess", function() {
$( ".log" ).text( "Triggered ajaxSuccess handler." );
} ); Теперь сделайте Ajax-запрос с помощью любого метода jQuery:
$( ".trigger" ).on( "click", function() {
$( ".result" ).load( "ajax/test.html" );
} ); Когда пользователь нажмёт элемент с классом trigger, и Ajax-запрос завершится успешно, сообщение в логе будет отображено.
Все обработчики ajaxSuccess будут вызваны, независимо от того, какой Ajax-запрос был завершён. Если вам необходимо различать запросы, вы можете использовать параметры, передаваемые обработчику. Каждый раз, когда выполняется обработчик ajaxSuccess, ему передаются объект события, объект XMLHttpRequest и объект настроек, который использовался при создании запроса. Например, вы можете ограничить обратный вызов, чтобы он обрабатывал только события, относящиеся к определённому URL:
$( document ).on( "ajaxSuccess", function( event, xhr, settings ) {
if ( settings.url == "ajax/test.html" ) {
$( ".log" ).text( "Triggered ajaxSuccess handler. The Ajax response was: " +
xhr.responseText );
}
} ); Примечание: Вы можете получить возвращённое содержимое Ajax, обратившись к xhr.responseXML или xhr.responseText соответственно для xml и html.
Дополнительные примечания:
- Начиная с jQuery 1.9, все обработчики глобальных Ajax-событий jQuery, включая те, что добавлены с
.on( "ajaxSuccess", ... ), должны быть присоединены кdocument. - Если
$.ajax()или$.ajaxSetup()вызываются с параметромglobalустановленным вfalse, событиеajaxSuccessне будет вызвано.
Пример:
Отображение сообщения, когда Ajax-запрос завершается успешно.
$( document ).on( "ajaxSuccess< function( event, request, settings ) {
$( "#msg" ).append( "<li>Successful Request!</li>" );
} );