Ajax

  Ajax称为异步JavaScript和xml (Asynchronous JavaScript and XML)

  快速创建动态网页的一种技术, 通过在后台与服务器进行少量的数据交换, 可以实现网页异步更新(不重新加载网页而局部修改网页) 相当于在客户端和服务端加了一个中间层

  所使用的技术:xhtml、css、使用DOM实现动态显示与交互、使用xml或json和XSLT进行数据交换与处理、使用XMLHttpRequest进行异步数据读取、用JavaScript绑定和处理所有数据

  使用XMLHttpRequest对象实现异步交互

  创建XMLHttpRequest对象 

  var xmlHttp;

  function createXHR() {

    if(window.ActiveXObject){

        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); //ie7以下

    }else{

        xmlHttp = new XMLHttpRequest();

    }

}

准备请求方式

xhr.open(method, url, asynchronous);

method: get与post

url:请求地址, 可以使相对地址也可以是绝对地址

asynchronous: true为异步(默认), false同步

设置请求头

不同的浏览器发送的请求头不同但基本头都会发送, 如Accept, Accept-Charset等,我们也可以设置自定义头信息发送给服务端, 方法如下:xhr.setRequestHeader(key, value);

发送get请求 send参数为null

发送post请求

xhr.open("post", url); xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");xhr.send(querystr);

注册回调事件处理函数

当XMLHttpRequest对象的readyState属性值发生改变时,会激发一个readystatechange事件,我们可以使用onreadystatechange属性来注册该回调事件处理函数

xhr.onreadystatechange=函数

readyState属性值如下:

0:未初始化 尚未调用open方法

1:启动 已调用open方法 但未接收到响应

2:发送 已调用send方法 但未接收到响应

3:接受 已接受部分数据

4:完成 已接受全部数据

处理服务端响应的内容

在收到服务端响应后,相应的数据会自动填充到XHR对象的属性中,常用属性如下:

reponseText 作为响应主体被返回的文本

responeXML 如果服务端响应的内容类型为text/xml或aplication/xml那么就返回包含xml内容否则返回null

status 响应http状态, 200代表响应成功

statusText http状态说明



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值