jQuery ajax同步的替换方法,使用 $.Deferred()对象

 function aa() {
            var defer = $.Deferred();
            $.ajax({
                url: "/Handler1.ashx",
                type: "post",
                success: function (data) {
                    defer.resolve(data);//这里的data数据会传到$.when(aa()).done(function(data) data里面
                }
            });
            return defer.promise();
        }


        $(function () {
            $("#btnTest").click(function () {
                var returnAA = "";
                $.when(aa()).done(function (data) {
                    //当aa()方法执行完毕后在执行这里面的回调函数
                    returnAA = data;
                    alert(returnAA);
                });

            });
        });

 

posted @ 2014-05-22 10:46  学亮  阅读(1910)  评论(1编辑  收藏  举报