AJAX异步对象,即XMLHttpRequest

//创建AJAX异步对象,即XMLHttpRequest
function createAJAX(){
    var ajax = null;
    try{
        ajax = new ActiveXObject("microsoft.xmlhttp");
    }catch(e1){
        try{
            ajax = new XMLHttpRequest();
        }catch(e2){
            alert("你的浏览器不支持ajax,请更换浏览器");
        }
    }
    return ajax;
}

(1)事件:

        ajax.onreadystatechange:表示AJAX异步对象不断监听服务端的响应,

        是由服务器程序触发,不是程序员触发

   (2)属性:

             ajax.readyState==0:表示AJAX异步对象已创建好,但还没有调用open()方法

             ajax.readyState==1:表示AJAX异步对象已调用open()方法,但还没有调用send()方法

             ajax.readyState==2:表示AJAX异步对象已调用send()方法,但请求还没有到达服务器端

             ajax.readyState==3:表示服务端已接收到AJAX异步对象的请求,正在处理响应中。。。

ajax.readyState==【4】:表示AJAX异步对象已经完完全全接收到了服务器的响应信             息,但接收到的数据不一定都正确

上述5种状态不是所有浏览器都相同,但状态4每种浏览器都相同

        ajax.status==200:表示AJAX异步对象接收到响应码,如果是200的话,表示一切正常

        

        ajax.responseText:表示从AJAX异步对象中获取HTML载体中的数据

         ajax.responseXML:表示从AJAX异步对象中获取XML载体中的数据

   (3)方法:

             ajax.open(method,url,可选的boolean值)

             AJAX异步对象准备发送异步请求

             参数一:以什么方式发送,常用的用GET或POST,大小写不敏感

             参数二:发送到什么地方去,常用Servlet或Struts2或SpringMVC来接收,

这里只限于JavaEE学科       

             参数三:默认值为true,表示AJAX对象以【异步】的方式提交到服务端

                     如果设置为false,表示AJAX对象以【同步】的方式提交到服务端

        ajax.setRequestHeader("content-type","application/x-www-form-urlencoded")

             表示将请求体中的内容,按照UTF-8的方式进行编码,只针对POST请求有效 

             ajax.send(content)

             AJAX异步对象真正发送异步请求

             参数一:表示HTTP【请求体】中的内容

                   如果是GET方式:content = null,如果强行传值到服务器,服务端收不到,返回NULL

                   如果是POST方式:content != null,例如:username=jack&password=123&role=admin

原文地址:https://www.cnblogs.com/loaderman/p/10044138.html