Ajax

1.什么是Ajax?(纯客户端技术)

异步 JavaScript和XML(标准通用标记语言的子集)。

目标:提高用户的浏览体验。

2.Ajax实现的效果

(1)客户端和服务器异步运行;

(2)客户端页面局部刷新;

(3)动态页面的静态化;

涉及到的技术:HTML、CSS、JS、DOM、XML、JSON等。

3.同步(synchronous)和异步(Asynchronous)

同步:客户端发起请求服务器给予响应(经典的B/S模型)

异步:客户端和服务器同时进行(异步的B/S模型)

4.创建XMLHttpRequest

var xhr=null;

xhr=new XMLhttpRequest();(XMLDOM对象)

xhr=new ActiveXObject(Microsoft.XMLHTTP)

if(window.XMLHttpRequest){//其他浏览器

  xhr=new XMLHttpRequest();

}else{//老IE

      xhr=new ActiveXObject("Microsoft.XMLHTTP")}

5.XMLHttpRequest的常用成员(重点);

xhr对象的作用:发起http请求消息,并接收服务器返回的响应消息。

(1)常用成员属性:

status:0                  保存着服务器返回的响应消息的状态码;

statusText:“”           保存着返回响应消息的原因短句;

responseText:“”       保存着响应消息的主体看做——一段string;

responseXML:null;     保存着响应消息的主体——看做一个XMLDOM对象;

timeout:0                设置XHR发起请求消息后,等待服务器发出的响应时间;

readyState:0            0-UNSENT 请求消息尚未发送;

                                1-OPENED  XHR已创建请求消息,打开针对服务器的连接

                                2-HEARDERS_RECEIVED XHR对象已经接收到响应

                                3-LOADING XHR正在加载响应主题数据

                                4-DONE  XHR对象应经接收完毕响应消息


 

(2)常用的成员事件

onreadystatechange:fn                        当XHR的readyState的值发生改变,触发此句柄

ontimeout:fn                                      当XHR的请求超时,触发句柄

onerror:fn                                          当XHR发生请求/响应错误,触发此句柄


(3)常用成员方法:

getAllResponseHeaders()                    获取响应消息中所有的头部;

getResponseHeader(hearderName)      获取响应消息中指定的头部;

open(MESTHED,URI,isAysnc)               创建一个http请求消息;

send(null/data)                                  发送http请求消息;

setResquestHeader(name,value)        在请求消息发送之前,设置一个请求


 

6.使用AJAX的步骤

(1)创建XHR对象

(2)绑定onreadtstatechange事件监听函数

(3)创建请求消息,建立到服务器的连接

(4)发送请求消息

ps://创建XHR对象

var xhr=null;

if(window.XMLHttpRequest){//其他浏览器

  xhr=new XMLHttpRequest();

}else{//老IE

      xhr=new ActiveXObject("Microsoft.XMLHTTP")

}

//绑定事件监听函数

xhr.onreadystatechange=function(){

         

}

//创建http请求消息,连接到服务器

xhr.open("GET/POST",".php(文件名)",true);

//发送请求信息

xhr.send(null/data)

 

posted on 2015-11-17 11:17  笑红尘。  阅读(385)  评论(0编辑  收藏  举报