欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Ajax犯的錯(cuò)誤處理方法

 更新時(shí)間:2016年09月25日 11:34:04   作者:SamLing  
ajax 發(fā)送請求時(shí)狀態(tài)判斷 if else 語句問題如何解決呢?接下來通過本文給大家分享ajax犯的錯(cuò)誤處理方法,對(duì)ajax錯(cuò)誤感興趣的朋友一起看看吧

1, ajax 發(fā)送請求時(shí)狀態(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(); 

  當(dāng)時(shí)輸出了兩個(gè)200 的狀態(tài)碼,然后才輸出xhr.responseText, 獲取到的內(nèi)容。 當(dāng)時(shí)很奇怪,不知道這兩個(gè)200 是怎么來的?

  當(dāng)時(shí)嘗試輸出不少內(nèi)容,但還是找不到原因。 只有到把else 語句中改為 console.log(xhr.readystate)才發(fā)現(xiàn)了問題,這時(shí)輸出結(jié)查依次是2,3,獲取到的內(nèi)容。 這時(shí)才發(fā)現(xiàn)原因:

  xhr 發(fā)送請求到請求結(jié)束,會(huì)經(jīng)過5種狀態(tài),狀態(tài)碼依次是0,1,2,3,4(就是readystate 的值),狀態(tài)每發(fā)生改變一次,就會(huì)觸發(fā)readystatechange事件,調(diào)用事件處理函數(shù)。 當(dāng) 狀態(tài)碼是變化到2時(shí),它調(diào)用readystatechange 事件,然后走 if/else 語句,

這是 readystate 顯然不是4,然后走else 語句 輸出 2. 以此類推,3,4 的時(shí)候再調(diào)用readystatechange 事件, 只有4 時(shí)才走if 里面的內(nèi)容,請求成功,返回請求內(nèi)容。

以上所述是小編給大家介紹的Ajax犯的錯(cuò)誤處理方法,希望對(duì)大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

最新評(píng)論