3

这是代码:

$.ajax({
        url: "script.php",
            success : oneHandler
        });

$.ajax({
        url: "script.php",
            success : twoHandler
        });

同时调用这两个函数调用时,是否确保在第一次调用的响应中真正调用了“oneHandler”?换句话说,是否检查了附加的字符串是否匹配?

如果我添加数据怎么办:

dataType: 'json',
data: {"json": "one"} ,

dataType: 'json',
data: {"json": "two"} ,

分别?

如果我使用该post方法怎么办?

4

2 回答 2

2

当然,JavaScript 是浏览器中的单线程模型,不存在真正的并发。只有非常接近。

在内部,为您通过$.ajax和朋友提出的每个请求创建一个对象;此对象是与服务器对话并接收响应的对象。您的成功回调附加到该对象。

因为每个请求都是一个单独的对象,所以可以保证执行正确的回调。注意多个请求可以同时共存,它们不会互相等待完成;如果你想要,你可以使用Deferred.pipe.

于 2012-11-21T03:13:05.470 回答
1

同时调用这两个函数调用时,是否确保在第一次调用的响应中真正调用了“oneHandler”?

是的

如果我使用 post 方法怎么办?

没关系。保证调用正确的回调

于 2012-11-21T03:11:06.580 回答