0

我尝试在中使用延迟而不是错误和成功回调$.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,这意味着首先执行失败然后完成。问题出在哪里?

4

1 回答 1

2

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

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

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

于 2013-08-25T07:39:40.263 回答