<script language="JavaScript">
var XMLHttpReq;
//创建XMLHttpRequest对象
function createXMLHttpRequest() {
if(window.XMLHttpRequest) { //Mozilla 浏览器
XMLHttpReq = new XMLHttpRequest();
}
else if (window.ActiveXObject) { // IE浏览器
try {
XMLHttpReq = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
XMLHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
}
//发送请求函数
function sendRequest(url) {
createXMLHttpRequest();
XMLHttpReq.open("GET", url, true);
XMLHttpReq.onreadystatechange = processResponse;//指定响应函数
XMLHttpReq.send(null); // 发送请求
}
// 处理返回信息函数
function processResponse() {
if (XMLHttpReq.readyState == 4) { // 判断对象状态
if (XMLHttpReq.status == 200) { // 信息已经成功返回,开始处理信息
updateList();
} else { //页面不正常
window.alert("您所请求的页面有异常。");
}
}
}
</srcipt>
XMLHttpRequest简介
open() 建立到服务器的新请求
send() 向服务器发送请求
abort() 退出当前请求
getResponseHeader("header") 返回指定首部的串值
setRequestHeader("header","value")把指定首部设置为所提供的值.在设置任何首部之前必须先调用open()
readyState 提供当前HTML的就绪状态
responseText 服务器返回的请求响应文本
responseXML 服务器的响应,表示为XML,这个对象可以解析为一个DOM对象
HTTP就绪状态表示请求的状态或情形,它用于确定请求是否已经开始,是否得到了响应或者/响应模型是否已经完成,它还可以帮助读取服务器提供的响应文本或数据是否安全.在Ajax应用程序中需要了解五种就绪状态
0: 请求没有发出(在调用open()之前)
1: 请求已经建立但没有发出(调用send()之前)
2: 请求已经发出正在处理之中(这里通常可以从响应得到内容头部)
3: 请求已经处理,响应中通常有部分数据可用,但是服务器还没有完成响应
4: 响应已完成,可用访问服务器响应并使用它