Ajax犯的錯誤處理方法
1, ajax 發(fā)送請求時狀態(tài)判斷 if else 語句問題。
var xhr = new XMLHttpRequest(); xhr.open("get",strUrl);<br> <br>xhr.onreadystatechange = function(){ <br><br> if(xhr.readyState === 4){ <br><br><em id="__mceDel"> if(xhr.status ===200){ console.log(xhr.responseText); } <br><br></em><em style="line-height: 1.5;" id="__mceDel"> <em id="__mceDel"><em id="__mceDel"><em id="__mceDel"> }else </em></em></em></em><em style="line-height: 1.5;" id="__mceDel"><em id="__mceDel"><em id="__mceDel"> <em id="__mceDel"><em id="__mceDel">{<br> console.log(xhr.status); } <br> }</em></em></em></em></em>
xhr.send();
當時輸出了兩個200 的狀態(tài)碼,然后才輸出xhr.responseText, 獲取到的內容。 當時很奇怪,不知道這兩個200 是怎么來的?
當時嘗試輸出不少內容,但還是找不到原因。 只有到把else 語句中改為 console.log(xhr.readystate)才發(fā)現(xiàn)了問題,這時輸出結查依次是2,3,獲取到的內容。 這時才發(fā)現(xiàn)原因:
xhr 發(fā)送請求到請求結束,會經過5種狀態(tài),狀態(tài)碼依次是0,1,2,3,4(就是readystate 的值),狀態(tài)每發(fā)生改變一次,就會觸發(fā)readystatechange事件,調用事件處理函數(shù)。 當 狀態(tài)碼是變化到2時,它調用readystatechange 事件,然后走 if/else 語句,
這是 readystate 顯然不是4,然后走else 語句 輸出 2. 以此類推,3,4 的時候再調用readystatechange 事件, 只有4 時才走if 里面的內容,請求成功,返回請求內容。
以上所述是小編給大家介紹的Ajax犯的錯誤處理方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- 詳解ajax的data參數(shù)錯誤導致頁面崩潰
- 快速解決ajax請求出錯狀態(tài)碼為0的問題
- PHP 中使用ajax時一些常見錯誤總結整理
- 完美解決ajax跨域請求下parsererror的錯誤
- ajax跨域訪問報錯501的解決方法
- jQuery中ajax錯誤調試分析
- Ajax向后臺傳json格式的數(shù)據(jù)出現(xiàn)415錯誤的原因分析及解決方法
- js ajaxfileupload.js上傳報錯的解決方法
- 解決ajax返回驗證的時候總是彈出error錯誤的方法
- Jquery Ajax Error 調試錯誤的技巧
- django使用ajax post數(shù)據(jù)出現(xiàn)403錯誤如何解決
- Ajax報錯400的參考解決辦法
相關文章
使用Ajax技術通過XMLHttpRequest對象完成首頁登錄功能
這篇文章主要介紹了使用Ajax技術通過XMLHttpRequest對象完成首頁登錄功能,很不錯的嘗試,需要的朋友可以參考下2014-08-08Ajax 的初步實現(xiàn)(使用vscode+node.js+express框架)
這篇文章給大家介紹使用vscode+node.js+express框架操作ajax的初步實現(xiàn)方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧2021-06-06解析ajax核心XMLHTTPRequest對象的創(chuàng)建與瀏覽器的兼容問題
這篇文章主要介紹了ajax核心XMLHTTPRequest對象的創(chuàng)建與瀏覽器的兼容問題。需要的朋友可以過來參考下,希望對大家有所幫助2013-12-12jQuery ajax json 數(shù)據(jù)的遍歷代碼
最近做了一個項目,其中有需求要進行ajax請求后,后臺傳遞回來以下json數(shù)據(jù)。下面小編給大家分享我的實現(xiàn)思路,需要的朋友參考下2016-06-06bootstrap select2 動態(tài)從后臺Ajax動態(tài)獲取數(shù)據(jù)的代碼
這篇文章主要介紹了bootstrap select2 動態(tài)從后臺Ajax動態(tài)獲取數(shù)據(jù)的代碼,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-12-12Select2在使用ajax獲取遠程數(shù)據(jù)時顯示默認數(shù)據(jù)的方法
今天小編就為大家分享一篇Select2在使用ajax獲取遠程數(shù)據(jù)時顯示默認數(shù)據(jù)的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-08-08