var xmlHttp = false;
// 实例化XmlHttpRequest。
function createXmlHttpRequest() {
// 非IE浏览器及IE7(7.0及以上版本),用xmlhttprequest对象创建。
if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
// IE(6.0及以下版本)浏览器用activexobject对象创建,如果用户浏览器禁用了ActiveX,可能会失败。
else if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
// 创建传送到服务端的字符串。
function createQueryString() {
var firstName = document.getElementById("firstName").value;
var middleName = document.getElementById("middleName").value;
var birthday = document.getElementById("birthday").value;
var queryString = "firstName=" + firstName + "&middleName=" + middleName + "&birthday=" + birthday;
return queryString;
}
// 使用Get的方式向服务端发送数据。
function doRequestUsingGet() {
createXmlHttpRequest();
}
// 使用Post的方式向服务端发送数据。
function doRequestUsingPost() {
createXmlHttpRequest();
var queryString = createQueryString();
var url = "Post.aspx?timeStamp=" + new Date().getTime();
xmlHttp.open("POST", url, true);
xmlHttp.setRequestHeader("Content-Length", queryString.length);
xmlHttp.setRequestHeader("CONTENT-TYPE", "application/x-www-form-urlencoded");
xmlHttp.send(queryString);
}
readystate 的5种状态
- 0 - (未初始化)还没有调用send()方法
- 1 - (载入)已调用send()方法,正在发送请求
- 2 - (载入完成)send()方法执行完成,已经接收到全部响应内容
- 3 - (交互)正在解析响应内容
- 4 - (完成)响应内容解析完成,可以在客户端调用了