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 );
}
});
});