jQuery.ajax()。abort()_浏览器仍然接收数据?

时间:2011-12-21 02:23:39

标签: javascript jquery ajax

在jQuery中,如果我中止了一个ajax调用,它是由浏览器完全加载,然后从内存中转储而不是事件处理的?或者只是加载了标题?在一个更复杂的脚本中,我注意到在Firefox / Firebug中标记为中止之前,有时会收到所有数据。

的javascript:

var $ajax;
function fetch(){
if ($ajax && $ajax.statusCode != 200) $ajax.abort();
$ajax = $.ajax({
    type: 'get',
    data:{search:"term"},
    dataType: 'json',
    url: 'http://localhost/data.php',
    success: function(_data){ },
});
}

fetch();
fetch();

data.php:

print 'naptime!';
sleep(2);

1 个答案:

答案 0 :(得分:1)

已在评论中解决!谢谢ZeSimon

  

可能与您使用localhost这一事实有关,因此转移非常快。而且你没有加载太多数据。此外,当您在localhost环境中收到响应代码时,请求已经完成。您需要使用更多数据并在更具生产力的环境中对此进行测试。 - ZeSimon