function ajax(url, fnSucc, fnFaild) {//一个请求地址,加两个返回函数
//1,创建Ajax对象;
var oAjax=null;
//关于window,不管是全局的变量,还是全局的函数,实际上都是属于window的。
//当用一个不存的变量的时候会出错,
//当用一个不存在的属性的时候,会:undefind.
if(window.XMLHttpRequest){//访问一个有可能不存在的属性。
oAjax = new XMLHttpRequest();
}else{
oAjax = new ActiveXObject("Microsoft.XMLHTTP");
}
//2,连接服务器
//open(方法,url,是否异步)
//同步:多件事一起,一件一件做;
//异步:一件件做,多件事一起;
// alert(oAjax.readyState);
oAjax.open('GET',url,true);
// alert(oAjax.readyState);
//3,发送请求;
oAjax.send();
//4,接收;
//window.onload,在页面加载完成后,做的事情。
oAjax.onreadystatechange = function () {
// alert(oAjax.readyState);
if(oAjax.readyState == 4){//是否结束
if(oAjax.status == 200){//是否成功
// console.log("成功"+oAjax.responseText);//服务器返回的内容;
fnSucc(oAjax.responseText);
}else{
if(fnFaild){//当函数传进来的时候才执行
fnFaild();
}
}
}
};
}
相关:
-readyState属性:请求状态
》》 0(未初始化)还没有调用open()方法;
》》 1 (载入)已调用send()方法,正在发送请求;
》》 2 (载入完成)send()方法完成,已经收到全部响应内容;
》》 3 (解析)正在解析响应内容;
》》 4(完成)响应内容解析完成,可以在客户端调用了。
-status属性:请求结果。
-responseText:返回内容