Ajax基础知识详解
Ajax主要的功能是实现了浏览器端 异步 访问服务器:通过浏览器的XMLHttpRequest对象发出小部分数据,与服务端进行交互,服务端返回小部分数据,然后更新客户端的部分页面。
1.先实例化XMLHttpRequest对象
var request; if (window.XMLHttpRequest){ request=new XMLHttpRequest(); } else{ request=new ActiveXObject("Microsoft.XMLHTTP"); //兼容ie5 6 }
2.XMLHttpRequest的方法将请求发送给服务器
request.open("POST",get.php,true);//请求 //设置http的头信息,告诉服务器我们要以send键值对方式发送一个表单, request.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); //POST必须设置Content-Type的值在open与send之间 request.send("name=王二狗&sex=男");//用send方法提交给服务端
3.获取响应的方法
responseText 获得字符串形式的响应数据 responseXML 获得XML形式的响应数据 status和statusText 以数字和文本形式返回HTTP状态码 getAllResponseHeader() 获取所有的响应报头 getResponseHeader() 查询响应中的某个字段的值
4.监听readyState属性的变化很重要
为0 请求未初始化,open还没有被调用
为1 服务器连接已建立,open已经调用了
为2 请求已被接收,接收到头的信息了
为3 请求处理中,接收到响应体了
为4 请求已完成,且响应就绪,响应完成了
//readyState变化时触发 //通过onreadystatechange事件判断readyState属性的变化 request.onreadystatechange=function(){ if(request.readyState===4&&request.status===200){ //做一些事情 比如获取响应数据request.responseText } }
5.完整XHR
var request=new XMLHttpRequest();//1.创建XHR对象 request.open("GET","get.php?number=" +表单里需要提交的数据,true);//2.调用open方法 //这里如果是post请求。send的就是一个包含数据的对象 request.send();//发送一些数据 request.onreadystatechange=function(){ //3.进行监听判断服务器是否正确响应 if(request.readyState===4&&request.status===200){ //4.做一些事情 比如获取服务器响应内容request.responseText } }
相关推荐
kentrl 2020-11-10
结束数据方法的参数,该如何定义?-- 集合为自定义实体类中的结合属性,有几个实体类,改变下标就行了。<input id="add" type="button" value="新增visitor&quo
ajaxyan 2020-11-09
zndy0 2020-11-03
学留痕 2020-09-20
Richardxx 2020-11-09
learningever 2020-09-19
chongxiaocheng 2020-08-16
ajaxhe 2020-08-16
lyqdanang 2020-08-16
curiousL 2020-08-03
TONIYH 2020-07-22
时光如瑾雨微凉 2020-07-19
83510998 2020-07-18
坚持着执着 2020-07-16
jiaguoquan00 2020-07-07
李永毅 2020-07-05
坚持着执着 2020-07-05