2019独角兽企业重金招聘Python工程师标准>>>
前一段时间开始研究AJAX,当然最基础的AJAX核心XMLHttpRequest当然是要研究的了,所以简单整理了一下相关属相和方法,供以后使用。
@Time:2011/11/01 22:23:12 By :zhangbosky Website :www.desetang.com E-mail :278036870@qq.com
【以下是一段我写的AJAX实例代码】:
Ajax: function(){ //this.options = {//url:options.url||"",//数据源地址 //method:options.method||"GET",//请求方法[POST、HEAD...] // data:options.data||null,//要发送给服务器的数据 //};//创建Ajax对象var A;this.Create = function(){ if(window.XMLHttpRequest){// code for IE7+, Firefox, Chrome, Opera, SafariA=new XMLHttpRequest();}else if(window.ActiveXObject){ try{ A = new ActiveXObject("Msxml2.XMLHTTP");//IE6 }catch(e){ A = new ActiveXObject("Microsoft.XMLHTTP");//IE5 } } return A; };this.init = function(){//this.extend(this.options, options || {});A=this.Create();A.open("GET","http://localhost/books.xml",true);
A.send();
A.onreadystatechange=function(){if (A.readyState==4 && A.status==200){document.getElementByIdx_x_x_x("myDiv").innerHTML= A.responseXML;}}}this.init();return this;}
【AJAX解析】
AJAX核心-XMLHttpRequest
【XMLHttpRequest】对象的属性
readyState
(1)0:创建了XMLHttpRequest对象,却没有初始化,即“未初始化”
(2)1:已经调用了XMLHttpRequest的open()方法,并且等待请求发送到服务器
(3)2:发送完成,通过send()方法发送请求到服务器,但还没有得到响应
(4)3:此时收到HTTP请求的头部信息,但消息体主体还未完全接收
(5)4:响应被完全接收
status
HTTP的状态代码,当readyState等于3或4时可用,当小于3时,试图存取status的值将引发一个异常
statusText
HTTP的状态的文本,当readyState等于3或4时可用,当小于3时,试图存取status的值将引发一个异常
responseText
(1)readyState等于0,1,2时,responseText将会是一个空字符串
(2)readyState等于3时,响应中包含客户端还未完成的响应信息
(3)readyState等于4时,responseText是完整的响应信息
【XMLHttpRequest】对象的方法
abort() 取消当前请求,使其回到初始化状态
open() 初始化一个XMLHttpRequest对象
open(method,url,async,username,password)
setRequestHeader(header,value) 设置请求的头部信息
send() 发送请求到服务器
getResponseHeader(header,value) 检索响应的头部信息
getAllResponseHeaders() 以字符串的方式返回所有的响应头部