本文实例讲述了javascript异步处理与Jquery deferred对象用法。分享给大家供大家参考,具体如下:

这是项目组老大整理的一些关于jquery 异步处理请求,以及使用 jquery deferred 对象的一些常见方法。虽然是项目上总结出来的。但也比较通用,分享在这里。
$.Ajax函数的返回值不代表返回的结果,只是一个Deffered对象。done(), fail(), always()函数来执行。例如:
function readData(){
$.ajax({ url:"test", dataType:"json" })
.done(function() {
//....
});
}
readData();
//...这里想添加一些后续处理,但程序将在Ajax回调前执行,所以无法达到预期目的
正确的代码:
function readData(){
return $.ajax({ url:"test", dataType:"json" })
.done(function() {
//....
});
}
readData().done(function () {
//...想添加的后续处理可以加在这里处理
});