原生Ajax寫法(GET)


 ajax的GET提交方式的原生代碼:

    var xhr = null; if(window.XMLHttpRequest){ xhr = new XMLHttpRequest(); }else if(window.ActiveXObject){ xhr = new ActiveXObject() }else{ xhr = null; } if(xhr){ xhr.open('GET','../data/data.json'); xhr.onreadystatechange = function(){ if(xhr.readyState == 4 && xhr.status == 200){ alert(eval("("+xhr.responseText+")").result); xhr = null; } } xhr.send(null); }

XMLHttpRequest() 這個對象可以在不重新加載頁面的情況下從后台獲取數據,支持的瀏覽器有IE7+、Firefox、Chrome、Safari 以及 Opera

ActiveXObject(“Microsoft.XMLHTTP”) 這個對象是針對老式ie瀏覽器的

onreadystatechange事件 當readyState的值發生改變時觸發此事件

open() 這個方法有三個參數,open("提交方式 get/post","資源的地址",異步或者同步 true/false);

readyState 准備狀態

0 (未初始化)對象已建立,但是尚未初始化(尚未調用open方法)

1(初始化)已調用send()方法,正在發送請求

2(發送數據)send()方法調用完成,但是當前的狀態及http頭未知

3(數據傳送中)已接收部分數據,因為相應及http頭不全,這時通過responseText獲取部分數據會出現錯誤

4(完成)數據接收完成,此時可以通過responseText獲取完整的數據

status 請求狀態 

200(成功)

404(沒有發現文件)

500(服務器內部錯誤)

responseText 請求成功后獲取數據

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM