//AJAX : Asynchronous JavaScript And XML (异步JS和XML)
//AJAX可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页某部分进行更新
function ajax(url,fnWin,fnfaild){
//1.创建Ajax对象
//var ajax = new XMLHttpRequest(); //标准浏览器
//var ajax = new ActiveXObject("Microsoft.XMLHTTP"); //IE7以下
var ajax = null;
//alert(window.XMLHttpRequest);
//兼容
if(window.XMLHttpRequest){
ajax = new XMLHttpRequest();
}else{
ajax = new ActiveXObject("Microsoft.XMLHTTP");
}
//alert(ajax);
//alert(ajax.readyState);
//2.与服务器建立连接
//ajax.open("连接方式","要访问的文件",true);
//true: 表示异步(同时进行)
//false: 表示同步(一个一个执行)
ajax.open('GET',url,true);
//3.发送请求
ajax.send();
//4.接收数据
//onreadystatechange:状态改变事件
ajax.onreadystatechange = function(){
if(ajax.readyState == 4){
//readyState属性:请求状态。
//0:请求未初始化(还没有调用open())。
//1:请求已经建立,但是还没有发送(还没有调用send())。
//2:请求已经发送,正在处理中,通常现在可以从响应中获取内容。
//3:请求在处理中,通常响应中已有部分数据可用了。
//4:响应已完成,可以获取并使用服务器的数据了。
if(ajax.status == 200){
//alert(ajax.responseText); //将从服务器上访问到的文件内容返回来
if(fnWin){
fnWin(ajax.responseText);
}
}else{
if(fnfaild){
fnfaild();
}
}
}
};
}
//AJAX可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页某部分进行更新
function ajax(url,fnWin,fnfaild){
//1.创建Ajax对象
//var ajax = new XMLHttpRequest(); //标准浏览器
//var ajax = new ActiveXObject("Microsoft.XMLHTTP"); //IE7以下
var ajax = null;
//alert(window.XMLHttpRequest);
//兼容
if(window.XMLHttpRequest){
ajax = new XMLHttpRequest();
}else{
ajax = new ActiveXObject("Microsoft.XMLHTTP");
}
//alert(ajax);
//alert(ajax.readyState);
//2.与服务器建立连接
//ajax.open("连接方式","要访问的文件",true);
//true: 表示异步(同时进行)
//false: 表示同步(一个一个执行)
ajax.open('GET',url,true);
//3.发送请求
ajax.send();
//4.接收数据
//onreadystatechange:状态改变事件
ajax.onreadystatechange = function(){
if(ajax.readyState == 4){
//readyState属性:请求状态。
//0:请求未初始化(还没有调用open())。
//1:请求已经建立,但是还没有发送(还没有调用send())。
//2:请求已经发送,正在处理中,通常现在可以从响应中获取内容。
//3:请求在处理中,通常响应中已有部分数据可用了。
//4:响应已完成,可以获取并使用服务器的数据了。
if(ajax.status == 200){
//alert(ajax.responseText); //将从服务器上访问到的文件内容返回来
if(fnWin){
fnWin(ajax.responseText);
}
}else{
if(fnfaild){
fnfaild();
}
}
}
};
}