jQuery:同时发出ajax请求,有可能吗?

我正在使用jQuery同时尝试检索多个数据。 要求的背景是不同的数据位需要不同的时间才能变得可用,因此我希望在返回时显示每个部分。

问题是请求似乎“排队”; 下一个请求在前一个请求返回之前不会发生。 经过广泛阅读后,似乎选择’async:false’可能就是我所追求的,但这似乎没有任何区别。

从TCP / IP调试我可以看到浏览器不会启动多个连接; 它在先前请求返回时使用相同的连接。

我在我的时间里看到很多网站同时在ajax上加载数据,所以很明显它是可能的,但是我正在试图让它发挥作用。

这是我的代码:

$.ajax({ type: "GET", async: false, url: "foo1.php" }); $.ajax({ type: "GET", async: false, url: "foo2.php" }); $.ajax({ type: "GET", async: false, url: "foo3.php" }); 

你想要异步(这是默认的)。 浏览器会在任何给定时间将您限制为两个请求。 这是HTTP规范的一部分。 ( HTTP 1.1规范,第8.1.4节 )

将请求放入队列是最佳选择。

我应该注意,这可以在Firefox和其他一些浏览器中被覆盖。 (但因为它不标准,它对你没有多大帮助)

浏览器限制您同时发出两个请求。 您可能希望使用队列管理器,如下所示: http : //www.protofunc.com/scripts/jquery/ajaxManager/