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

手写Ajax

发布时间:2020-12-15 22:00:14 所属栏目:百科 来源:网络整理
导读:创建异步对象 function creatXmlHttp () { var xhobj = false; try { xhobj = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try{ xhobj = new ActiveXObject("Microsoft.XMLHTTP"); }catch (e2){ xhobj = false } } if (!xhobj typeof XMLHttpReques

创建异步对象

function creatXmlHttp () {
    var xhobj = false;
    try {
        xhobj = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) { 
        try{
             xhobj = new ActiveXObject("Microsoft.XMLHTTP");
        }catch (e2){
             xhobj = false
        }
   }
     if (!xhobj && typeof XMLHttpRequest != "undefine") {
         xhobj = new XMLHttpRequest();
   }
   return xhobj;
}

post提交数据

//post提交数据"FristAjax.ashx"
    function PostData(page,msg) {
        //创建异步对象
        xhr = creatXmlHttp();
        //设置请求参数
        xhr.open("post",page,true);
        //设置post请求报文
        xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
        //设置回调函数(这个回调函数主要是用来检测服务器是否将数据发回给异步对象)
        xhr.onreadystatechange = function () {
            if (xhr.readyState == 4) {//当服务器将数据发回给异步对象时,readyState=4
                if (xhr.status == 200) {//如果返回的响应报文 的状态码为200,才代表服务器正确运行后发回的数据
                   // alert("呵呵!" + xhr.readyState + xhr.responseText);
                    //  xhr.responseText获取服务器响应数据
                    return xhr.responseText;
                }
                else {
                    //alert("系统忙,请稍后再试!")
                    return false;
                }
            }
        }
        //异步对象发送请求
        xhr.send(msg);
 }

post调用方法

         function post() {
             var v = PostData("FristAjax.ashx","txtName = sdfdsf");
             alert(v);
       }
get

    var xhr = false;
        function GetData() {
        //创建异步对象
            xhr = creatXmlHttp();
            //设置请求参数
            xhr.open("GET","FristAjax.ashx",true);
            //设置浏览器不使用缓存
            xhr.setRequestHeader("If-Modified-Since","0");
           //设置回调函数(这个回调函数主要是用来检测服务器是否将数据发回给异步对象)
            xhr.onreadystatechange = function () {
                if (xhr.readyState == 4) {//当服务器将数据发回给异步对象时,readyState=4
                    if (xhr.status == 200) {//如果返回的响应报文 的状态码为200,才代表服务器正确运行后发回的数据
                        alert("呵呵!" + xhr.readyState + xhr.responseText);
                      //  xhr.responseText获取服务器响应数据
                    }
                    else { 
                        alert ("系统忙,请稍后再试!")
                    }
                }
            }  
            //异步对象发送请求
            xhr.send(null);

(编辑:李大同)

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

    推荐文章
      热点阅读