指引网

当前位置: 主页 > 网页制作 > JavaScript >

javascript用XMLHttpRequest对象实现ajax

来源:网络 作者:佚名 点击: 时间:2017-08-07 22:18
[摘要] javascript用XMLHttpRequest对象实现ajax异步加载,指引教程网把代码分享出来,需要的朋友可以学习一下。复制代码 代码如下://发送Get请求fu...
javascript用XMLHttpRequest对象实现ajax异步加载,指引教程网把代码分享出来,需要的朋友可以学习一下。

 
复制代码 代码如下:
//发送Get请求
function sendGetRequest(url) {
    var xhr = createXMLHttpRequest();
    if (xhr) {
        xhr.setRequestHeader("Content-Type", "text/xml");
        xhr.open("GET", url, true);
        xhr.send();
        xhr.onreadystatechange = callBack(xhr);
    }
}

//发送 POST 请求
function sendPostRequest(url) {
    var xhr = createXMLHttpRequest();
    if (xhr) {
        xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        xhr.open("POST", url, true);
        var content = "user=admin&pwd=123";
        xhr.send(content);
        xhr.onreadystatechange = callBack(xhr);
    }
}

//请求完成后
function callBack(xmlHttpRequest) {
    switch (xmlHttpRequest.readyState) {
        case 0:
            //未初始化
            break;
        case 1:
            //正在加载
            break;
        case 2:
            //已加载
            break;
        case 3:
            //请求中
            break;
        case 4:
            //请求完成
            if (xmlHttpRequest.status == 200) {
                //请求成功返回
                var data = xmlHttpRequest.responseText;
            } else {
                if (xmlHttpRequest.status == 404) {
                    //页面未找到
                }
                xmlHttpRequest.abort();
            }
            break;
        default:
            break;
    }
}

//创建 XMLHttpRequest 对象
function createXMLHttpRequest() {
    var xmlHttpRequest;
    // for Firefox, Chrome, Opera, Safari
    if (window.XMLHttpRequest) {
        xmlHttpRequest = new XMLHttpRequest();
    } else {
        // for IE
        xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP");
        if (xmlHttpRequest == undefined) {
            xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    return xmlHttpRequest;
}

------分隔线----------------------------