jquery与ajax调用相同

jquery与ajax调用相同,jquery,ajax,call,kill,Jquery,Ajax,Call,Kill,我有一个请求 result = $.ajax({ url: '/live-sell-search.php?id=123', success: function(result) { $('.results-list').html(result); } }); 我称之为“更改”,如果之前的呼叫正在进行中,我会尝试终止它 if(result!=“undefi

我有一个请求

  result = $.ajax({
              url: '/live-sell-search.php?id=123',
              success: function(result) {
              $('.results-list').html(result);
                }
            });
我称之为“更改”,如果之前的呼叫正在进行中,我会尝试终止它

if(result!=“undefined”){resl.abort();}


还有一些变化,但它总是在某个点刹车。有人能告诉我怎么做吗?

正如其他人所说,你需要开始接受答案

已更新

我在一个网站上使用它,它对我来说效果很好

调用onChange事件时,它会检查是否已经有AJAX调用生效。如果是这样,它将中止它并启动一个新的AJAX调用

AJAX调用完成后,xhr变量将为null。真的很简单

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

正如其他人所说,你需要开始接受答案

已更新

我在一个网站上使用它,它对我来说效果很好

调用onChange事件时,它会检查是否已经有AJAX调用生效。如果是这样,它将中止它并启动一个新的AJAX调用

AJAX调用完成后,xhr变量将为null。真的很简单

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

你能偶尔接受你问题的答案吗?你可能应该接受你之前问题的一些答案…@Niklas:+1我偶尔喜欢:)@Naveen,从0%到40%,似乎在工作:)我不知道有一个
kill
标签。你能偶尔接受你问题的答案吗?你可能应该接受你以前问题的一些答案…@Niklas:+1我偶尔喜欢:)@Naveen,从0%到40%,似乎正在工作:)我不知道有一个
kill
标记。不,我试过了。我要找的可能是调用的某个唯一ID,或者使用jqXHR对象或类似的东西。不,但当我开始单击更改时触发ajax的Chackbox时,它会调用两次,因为我认为最后一个调用还没有启动,新的调用是call,而我触发两个电话。当我单击“慢”时,它会工作。如果你知道如何才能做到这一点,我将不胜感激。我试图将var result=null;在开始更改功能时,它再次中断,这让我很害怕。我尝试了插件,但它只能停止新的呼叫,并保留旧的直到它完成。啊,对。我以前做过一个实时搜索AJAX调用。我会更新我的答案。不,我已经尝试过了。我正在寻找的可能是某个用于调用的唯一ID,或者使用jqXHR对象或类似的东西。不,但当我开始单击在更改时触发ajax的Chackbox时,请调用它两次,因为我认为最后一个调用尚未启动,新的调用是call,我触发了两个调用。当我单击“慢”时,它会工作。如果你知道如何才能做到这一点,我将不胜感激。我试图将var result=null;在开始更改功能时,它再次中断,这让我很害怕。我尝试了插件,但它只能停止新的呼叫,并保留旧的直到它完成。啊,对。我以前做过一个实时搜索AJAX调用。我会更新我的答案。