原生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