$ .ajax()可以在请求完成之前触发“成功”吗?

时间:2013-01-18 23:22:25

标签: jquery ajax

假设我$.post()向执行以下操作的脚本发出AJAX请求:

echo "foo";
sleep(60);  // block request for some time
echo "bar";

原始脚本在看到“foo”时是激活成功函数,还是在“bar”被回显后最终完成ajax脚本?

2 个答案:

答案 0 :(得分:2)

响应到达时可能会有多个readystatechange事件,但响应完成时readyState仅更改为4(已加载)。

success事件发生且readystatechange属性为4(已加载)时,jQuery库将调用readyState方法,status属性显示成功的状态代码(例如200)。

答案 1 :(得分:1)

“酒吧”之后。 :)或者更确切地说,当它收到状态码为200的HTTP标头时。这意味着脚本已经完成执行。