并发jQuery ajax请求中的重复数据

时间:2014-08-20 22:54:06

标签: javascript jquery ajax

我从网页上的链接表中获取数据。当我遍历表格时,我启动了一堆ajax请求,递增一个计数器,然后{J}当我到达终点时看看它们是否全部完成。

与此同时,我的ajax请求开始完成 - 所有网址都不同并导致内容不同,但我打印的checkFinished()通常会相同!并非所有相同,但在30个请求中,可能会有6个唯一data获取。

data

我可以看到每个调用的href都不同,但数据与描述的相同。

至关重要的是,如果我将for (var i = 0; i < max; ++i) { //...getting the link href = a.attr("href") console.log("Fetching"+a.innerText); $.ajax({ url:href }).done(function(data){ console.log(href, data); //the data doesn't match the href page! }) } 添加到async: false来电,它会完美运行,因此ajax调用就会出现问题。 我没试过搞乱其他的ajax设置。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

修改,更新

尝试

var max = 5;
$("a").slice(0, max).each(function(k, v) {
  console.log("Fetching" + $(v).text());
  $.ajax($(v).attr("href"))
  .done(function(data) {
    console.log(data);
  })
})