首頁  >  文章  >  web前端  >  HTML-封裝原生Ajax

HTML-封裝原生Ajax

巴扎黑
巴扎黑原創
2017-06-27 09:14:501516瀏覽
function ajax(data){    //data{data:"",dataType:"xml/json",type:"get/post",url:"",asyn:"true/false",success:funtion(){},failure:function(){}}
    //datapost={username:123,pwd=456}
    //dataGet="username=123&pwd=456"
    //第一步:创建XHR对象var xhr=null;
    if(window.XMLHttpRequest){//标准的浏览器  xhr=new XMLHttpRequest();  
    }else{
      xhr=new ActiveXObject('Microsoft.XMLHTTP');
    }//第二步:准备发送前的一些配置参数var type=data.type=='get'?'get':'post';
    var url='';
    if(data.url){
        url=data.url;
        if(type=='get'){
            url+="?"+data.data+'&_t='+new Date().getTime();//(就是dataGet)}
    }
    var flag=data.asyn=='true'?'true':'false';
    xhr.open(type,url,flag);//第三步:执行发送的动作if(type=='get("Content-Type","application/x-www-form-urlencoded")
        xhr.send(data.data);//就是dataPost}//第四步:指定回调函数xhr.onreadstatechange=function(){
       if(this.readyState==4){
            if(this.status==200){
                 if(typeof data.success=='function'){
                     var d=data.dataType=='xml'?this.responseXML:this.responseText;
                     data.success(d);
                }
            }else{
                  if(typeof data.failure=='function'){
                       data.failure();
                  }
            }
        }
    }
}

 

#

以上是HTML-封裝原生Ajax的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn