qingchundou110 发表于 2013-1-23 02:12:29

Ajax原理步骤

核心:XMLHttpRequest对象
属性         值    含义
readyState   0-4   4表示所有响应都被接受
responseText 只读字符串 从服务器接收到的内容
responseXML 只读 将响应内容解析为XML格式,并以document对象方式返回
status       服务器返回的HTTP代码
statusText status属性的字符串形式
方法    含义
abort()   将readyState属性设为0并取消所有未完成的操作
getAllResponseHeaders()   以字符串形式返回为解析的HTTP响应头文件
getResoinseHeader("Content-Type") 指定http头名称
open(method,url,asynchronous,username,pwd)
   method:请求方式 "get" "post" "head"
   url: 请求页面的URL地址
   asynchronous flase时请求为同步   true时请求为异步
send(body) body params字符串
setRequestHeader(name,value) 为请求设置指定头的内容
步骤:
var r = new XMLHttpRequest    //0
r.open("post","/b/find_user",true) //1
r.setRequestHeader("Content-Type","application/x-www-form-urlencoded")   //2
r.onreadystatechange = "request()"   //3
r.send(params)   //4


//为不支持XMLHttpRequest构造函数的IE版本定义替代函数
if(typeof(XMLHttpRequest)=="undefined" && window.ActiveXObject)
{
function XMLHttpRequest()
{
   var xmlhttp_arr = ["MSXML2.XMLHTTP","Microsoft.XMLHTTP"];
   var xml_request
   for(var i=0;i<xmlhttp_arr.length;i++)
   {
    if(xml_request = new ActiveXObject(xmlhttp_arr))
    break
   }
   return xml_request
}
}




1.XMLHttpRequest对象,提供对html协议的完全访问,通过该对象方法能够想服务器发送Post请求和GET请求,能轻易获得服务器返回结果。
   方法:open(method,url,asynchronous,username,pwd) 设置请求的参数,但并不向服务器发送。
参数:method表示请求的方式,"GET","POST","HEAD"。url表示要请求的页面的URL地址。
asynchronous为布尔值,false表示请求同步,true表示请求异步。username和pwd为可选参数,表示访问目标URL的授权用户名和密码。

          方法:send(body) 向服务器发送请求,在调用send方法前必须调用post方法,反之会出现异常
参数:body表示请求体,是一个字符串或者document对象。

    方法:setRequestHeader(name, value)
页: [1]
查看完整版本: Ajax原理步骤