var xhr = createXHR();
// open函数接受三个参数,第一个参数是发送请求的类型,第二个是请求的地址,第三个是是否以异步的形式发送请求
//url是相对于执行页面的相对路径,当然绝对路径也可以,调用 open方法并不会真正发送请求,要发送请求需要使用send方法
xhr.open("get", "example.aspx", false);
//发送请求
xhr.send(null);
//收到响应,响应的数据会自动填充到XHR对象的属性,
//responseText:作为响应的主体被返回的文本
//responseXML:如果响应的类型是“text/xml”或者“application/xml”,这个属性保存包含着响应数据的xml dom 文档
//status :响应的http状态
//statusText:http状态说明
//xhr的readyState属性,表示请求/响应过程的当前活动阶段
0:代表未初始化。尚未调用open()方法
1:启动,已经调用open()方法,但是没有调用send方法
2:发送,已经调用send()方法,但是没有收到响应
3:接收,已经接收部分响应数据
4:完成,已经接收到全部响应数据,而且可以在客户端上使用
只要readyState属性从一个值变到另外一个值,都会触发readystatechange事件
if (xhr.readyState == 4) {
//判断状态码是否正常
//正常,则调用回调函数
if (xhr.status == 200)
{
//执行回调函数
}
}