what
XMLHttpRequest 对象用于在后台与服务器交换数据
why
在不重新加载页面的情况下更新网页
在页面已加载后从服务器请求数据
在页面已加载后从服务器接收数据
在后台向服务器发送数据
how
常用事件:
ajax.onreadystatechange:表示AJAX异步对象不断监听服务端的响应(注: 由服务器程序触发而不是程序员触发)
readyState属性一共有四种取值:
- ajax.readyState==0,ajax异步已创建好,但没有调用open()方法
- ajax.readyState==1,ajax异步对象已调用open()方法,但没有调用send()方法
- ajax.readyState==2,ajax异步对象已调用send()方法,但请求没有到服务器端
- ajax.readyState==3,服务器已收到ajax的请求,正在处理响应
- ajax.readyState==4,ajax已接收到服务器的响应信息,但数据不一定都正确
这几种状态只有状态4每个浏览器都相同
ajax.status==200,表示ajax异步对象接收到响应码,一切正常
ajax.responseText,从ajax异步对象中获取HTML载体中的数据
ajax.responseXML,从ajax异步对象中获取XML载体中的数据
方法
ajax.open(method,url,true/false);
method:表示以get或post方式发送 URL:发送到哪里 true/false:如果为true表示以异步的方式提交到服务器,false的话以同步的方式提交到服务器