首頁  >  文章  >  web前端  >  ajax請求出錯狀態碼為0時該如何處理

ajax請求出錯狀態碼為0時該如何處理

php中世界最好的语言
php中世界最好的语言原創
2018-03-30 15:44:372990瀏覽

這次帶給大家ajax請求出錯狀態碼為0時該如何處理,處理ajax請求出錯狀態碼為0時的注意事項有哪些,以下就是實戰案例,一起來看一下。

今天在使用 ajax 向後台請求資料時出現錯誤,提示狀態碼為 0 ,後台採用的是 spring mvc 架構

狀態碼為0是什麼意思呢?查找了下,原來它意味著(未初始化)即沒有調用到send()方法,我原來程式碼如下:

$.ajax({
url:"test",
type:"post",
data:{
  blogTitle : $("#form1 input").val(),
  blogType : $("#form1 option:selected").val(),
  article : htmlcontent
},
dataType: "json",
success: function(data,textStatus){
  if(data.flag == "success"){
    alert("发表成功!");
    window.location.href = 'http://www.baidu.com';
  }    
},
error: function(XMLHttpRequest, textStatus, errorThrown){
  alert(XMLHttpRequest.status);
  alert(XMLHttpRequest.readyState);
  alert(textStatus);
}
 });

仔細檢查,好像沒什麼不對勁的啊,況且在後台都能正常接收發送的數據了,說明ajax 還是發送了數據的,這是後台打印的相關參數信息

#又一番思索,原來是表單出現了問題:

<form onsubmit="addBlog();">
//中间省略
<button type="submit">发表博客</button> 
</form>

可以看到,我在button 標籤上新增了type=」submit」屬性,但這樣做會產生新的一次表單點擊提交,本來form 預設點擊button時會產生一次提交, button type=”submit” 時又會產生新第一次提交,導致ajax 未執行完畢表單事件發生了變更。

解決方法: 將上面程式碼改為:

<form onsubmit="return false">
//中间省略
<button type="addBlog()">发表博客</button>

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

推薦閱讀:

實作改變狀態和刪除無刷新的Ajax+PHP程式碼

Ajax如何實作客戶端非同步呼叫服務端

#

以上是ajax請求出錯狀態碼為0時該如何處理的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn