2015-10-29 4 views
0

У меня есть обработчик в базовом файле в приложении прослушивает ajaxStart:Получить текущий обработчик ajaxStart события

$(document).ajaxStart(function() { 
     //do something 
    }); 

Но для конкретных запросов, я хочу, чтобы заменить этот обработчик другим обработчиком, сделать запрос, то поменяйте обратно в старый обработчик. Итак, как я могу получить обработчик (ы) для события «ajaxStart», а затем заменить его? Я пытался найти существующий обработчик:

  var handlers = jQuery._data(document, "ajaxStart"); 
      console.log('handlers are '); 
      console.log(handlers); 

Но обработчики были неопределенные ....

ответ

0

Не вдаваясь в подробности относительно того, что именно вы пытаетесь достичь с помощью этого, вы можете отключить глобальные обработчики для отдельных ajax вызывает, переходя в global: false, как показано ниже.

$.ajax({ 
    global: false, 
    beforeSend: function(){ 

    }, 
    complete: function(){ 
     } 

}); 
0

Существуют различные виды использования Jquery._data на этой странице https://api.jquery.com/jquery.data/. JQuery.data (элемент, ключ, значение) Вы должны использовать ключ в методе.

$(document).ajaxStart(function() { 
    }); 
var handlers = jQuery._data(document,"test","ajaxStart"); 
console.log(handlers); 

выход: ajaxStart

Смежные вопросы