要么失败,要么完成ajax延迟执行

时间:2013-08-25 07:28:30

标签: jquery

我尝试使用延迟而不是错误&成功回调$.ajax,所以我写了以下代码

this.model.SyncByWS()
        .done(function(data)
                            {
                                console.log(data);
                            })
        .fail(
            console.log("Fail")
        );

和SyncByWS返回$.ajax

    return  $.ajax({
                url:  '/traffic-counter/packets/get',
                type: 'POST',
                contentType: 'application/json',
                dataType: 'json',
                data: JSON.stringify(postData),
             });

但是在控制台中我看到“失败”然后data,这意味着首先执行失败然后完成。问题出在哪里?

1 个答案:

答案 0 :(得分:2)

您需要将函数引用传递给fail方法。

.fail(function(){
           console.log("Fail");
      });

否则,将执行console.log并将返回的值传递给fail,这不是函数引用。因此,即使在返回ajax调用之前,您也会看到“失败”。