2012-01-16 1 views
4

Я работаю в rails 2 У меня проблема с тем, как остановить предыдущий вызов ajax на том же элементе.Как остановить предыдущий вызов ajax, отправленный в jquery

Например,

я есть категории выпадающий список, который обновляется на основе типа блога. И я дважды нажимал тип, поэтому отправляются 2 запроса. Прежде чем мой второй req перешел, если я нажал на категорию, основанный на первом ответе на загрузку подкатегорий, а теперь второй ответ для загрузки категорий, которые были переработаны и обновлены. но подкатегории являются ответом одной из категорий, выбранных из первых категорий ответов.

Как остановить предыдущий вызов ajax, отправленный для извлечения категорий.

ответ

4
var currentRequest = null; 

function someFunction(target){ 
    currentRequest = jQuery.ajax({ 
     url: target, 

     beforeSend : function() 
     {   
      if(currentRequest != null) 
      { 
       currentRequest.abort() 
      } 
     }, 

     success: function() { alert("done"); } 
    }); 
} 

Конечно функция не нужна, просто использовать переменную, содержащую XHR-объект и прервать запрос перед отправкой.

+0

Чтобы быть уверенным, функция ajax удаляется из переменных? Как это работает. Вы не отключаете 'currectRequest'. – Martijn

+0

Это не работа –

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