2010-09-11 124 views
2

可能重复:
How to cancel a jquery.load()?如何停止并发AJAX调用

好了,所以我有一个做一个Ajax请求每个按键的自动完成场....这样可以减缓东西下来很多。如果您访问here并使用

电子邮件:[email protected] 通:TEST12

如果你有萤火虫打开并启动快速打字,你会看到所有的看到所有的Ajax请求。我的问题是,如果有更近的请求,我可以取消先前的请求。这是我的代码。

这是我自动完成呼叫使用此plugin

$('#request_artist').autocomplete({ 
    serviceUrl: '<%= ajax_path("artistName") %>', 
    minChars:1, 
    width: 300, 
    delimiter: /(,|;)\s*/, 
    deferRequestBy: 0, //miliseconds 
    params: { artists: 'Yes' }, 
}); 

从那里我叫AJAX使用

从我的Rails应用

我的Rails应用程序,我做出了iTunes的API

通话http://ax.itunes.apple.com/WebObjects/MZStoreServices.woa/wa/wsSearch?term=metalicca

真的我的问题是,有没有办法告诉如果一个Ajax运行并杀死它

+0

看到类似的问题:http://stackoverflow.com/questions/2813168 – aceofspades 2010-09-11 17:49:46

回答

3

您可以尝试使用AJAX Queue/Cache/Abort/Block Manager,这是我在遇到类似问题时使用的。使用abortOld选项,当对新请求的响应进入时,插件将中止旧请求。