JQuery же AJAX вызов убить

У меня есть запрос AJAX

  result = $.ajax({
              url: '/live-sell-search.php?id=123',
              success: function(result) {
              $('.results-list').html(result);
                }
            });

Я вызываю это при изменении, и я пытаюсь убить предыдущий вызов, если он выполняется с чем-то вроде этого

if(result!='undefined'){resul.abort();}

и несколько вариантов этого, но он всегда тормозит в какой-то момент. Может кто-нибудь сказать мне, как это можно сделать?

1 ответ

Решение

Как уже говорили другие люди, вам нужно начать принимать ответы.

обновленный

Я использую это на веб-сайте, и это работает довольно хорошо для меня.

Когда вызывается событие onChange, оно проверяет, есть ли уже действующий вызов AJAX. Если это так, он прерывает его и запускает новый вызов AJAX.

После завершения вызова AJAX переменная xhr обнуляется. Просто на самом деле.

var xhr = null;

$("#textbox").change(function(){

    if( xhr != null ) {
         xhr.abort();
    }

    xhr = $.ajax({
              url: '/live-sell-search.php?id=123',
              complete: function( xhr ){
                  xhr = null; // empty xhr object
              },
              success: function( data ) {
                  $('.results-list').html( data );
              }
          });
});
Другие вопросы по тегам