加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

兼容性IE的Ajax原生Javascript代码

发布时间:2020-12-16 03:11:48 所属栏目:百科 来源:网络整理
导读:说明:异步会立即返回,不阻塞后面代码执行。同步恰恰相反。 同步调用get function send_request(){ var xmlhttp = null ; if ( window .XMLHttpRequest){ xmlhttp= new XMLHttpRequest(); } else if ( window .ActiveXObject){ xmlhttp= new ActiveXObject(

说明:异步会立即返回,不阻塞后面代码执行。同步恰恰相反。

同步调用get

function send_request(){
    var xmlhttp = null;
    if (window.XMLHttpRequest){
        xmlhttp=new XMLHttpRequest();
    }else if (window.ActiveXObject){
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    if (xmlhttp!=null){
        var requrl = 'user/save.do?username=zhangsan&age=10';//url可以是相对路径也可以是绝对,get需要将参数放在url里,如果参数有中文先调用encodeURIComponent("username=张三&age=10")编一下码
        xmlhttp.open( "GET",requrl,false);//第一个参数指明访问方式,第二次参数是目标url,第三个参数是“是否异步”,true表示异步,false表示同步
        xmlhttp.send();
        return xmlhttp.responseText
    }else{
        alert("您的浏览器不支持AJAX!");
    }
};

异步调用get

function send_request(){
    var xmlhttp = null;
    if (window.XMLHttpRequest){
        xmlhttp=new XMLHttpRequest();
    }else if (window.ActiveXObject){
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    if (xmlhttp!=null){
        var requrl = 'user/save.do?username=zhangsan&age=10';//url可以是相对路径也可以是绝对,get需要将参数放在url里,如果参数有中文先调用encodeURIComponent("username=张三&age=10")编一下码
        xmlhttp.open( "GET",true);//第一个参数指明访问方式,第二次参数是目标url,第三个参数是“是否异步”,true表示异步,false表示同步
        xmlhttp.onreadystatechange=function(){//异步需要指定回调函数
            if (xmlhttp.readyState==4 && xmlhttp.status==200){//readyState为4,表示ajax请求已经完成,status是目标url返回的http状态码,200表示服务器响应成功
            var d= xmlhttp.responseText; 
            // 处理返回结果 
          } 
        }
        xmlhttp.send();
    }else{
        alert("您的浏览器不支持AJAX!");
    }
};

异步调用post

function send_request(){
    var xmlhttp = null;
    if (window.XMLHttpRequest){
        xmlhttp=new XMLHttpRequest();
    }else if (window.ActiveXObject){
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    if (xmlhttp!=null){
        var requrl = 'user/save.do';//url可以是相对路径也可以是绝对
        xmlhttp.open( "POST",true);//第一个参数指明访问方式,第二次参数是目标url,第三个参数是“是否异步”,true表示异步,false表示同步
        xmlhttp.onreadystatechange=function(){//异步需要指定回调函数
            if (xmlhttp.readyState==4 && xmlhttp.status==200){//readyState为4,表示ajax请求已经完成,status是目标url返回的http状态码,200表示服务器响应成功
            var d= xmlhttp.responseText; 
            // 处理返回结果 
          } 
        }
        xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded"); //post需要设置Content-type,防止乱码
        xmlhttp.send("username=zhangsan&age=10");//post需要将参数放在send方法,当然参数放在url也还是可以的,但不好
    }else{
        alert("您的浏览器不支持AJAX!");
    }
};

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读