2012-01-30 116 views
0

我使用jQuery实现了ajax调用,出现错误时,我可以查找textStatus以确定错误是否为“timeout”,“error”,“abort”,“parseerror”。jQuery ajax错误代码:“错误”的真正含义是什么?

但是“错误”真的代表什么? 404(未找到)? 408(超时)?

代码:

$.ajax({ 
     url: "../resources/plan/get/" + planno, 
     type: "get", 
     dataType: "html", 
     timeout: 5000, 
     success: function(data, txtStat, xhr) { 
      console.log("success:" + txtStat); 
     }, 
     error: function(xhr, txtStat, errThrown) { 
      if(txtStat === "timeout") { 
       console.log("ajax has timed-out! " + txtStat + ":::" + errThrown); 
      } 
      else if(txtStat === "error") { 

       //so..what is error means??? 


      } 
      //TODO write else.. 
     } 
}); 

不知是否是其他一切不是HTTP 200?

回答

3

我猜想除了200之外的所有东西。难道你不看xhr.status看看服务器返回什么错误代码?

+0

这实际上是好点!我会看看! thx :) – 2012-01-30 10:08:42

+0

如果发生错误,xhr.status和xhr.readyState都返回0 – 2012-01-30 10:11:27

+0

哦..我很抱歉,它不是错误的情况下,它是“超时”的情况..我必须更改我的服务器代码像500回来测试这个。 – 2012-01-30 10:13:34