原生AJAX写法

虽然现在很多JS的框架提供了AJAX的调用方法,我们甚至不用去了解其具体的实现原理就可以直接调用了,但是我认为不去从最基础的层面了解一个东西,就很难做到最好。

        var XHR=null;
        if (window.XMLHttpRequest) {
            // 非IE内核
            XHR = new XMLHttpRequest();
        } else if (window.ActiveXObject) {
            // IE内核,这里早期IE的版本写法不同,具体可以查询下
            XHR = new ActiveXObject("Microsoft.XMLHTTP");
        } else {
            XHR = null;
        }

        if(XHR){
            XHR.open("GET","ajaxServer.action");

            XHR.onreadystatechange = function () {
                // readyState值说明
                // 0,初始化,XHR对象已经创建,还未执行open
                // 1,载入,已经调用open方法,但是还没发送请求
                // 2,载入完成,请求已经发送完成
                // 3,交互,可以接收到部分数据

                // status值说明
                // 200:成功
                // 404:没有发现文件查询或URl
                // 500:服务器产生内部错误
                if (XHR.readyState == 4 && XHR.status == 200) {
                    // 这里可以对返回的内容做处理
                    // 一般会返回JSON或XML数据格式
                    console.log(XHR.responseText);
                    // 主动释放,JS本身也会回收的
                    XHR = null;
                }
            };
            XHR.send();
        }

相关文章

IE6是一个非常老旧的网页浏览器,虽然现在很少人再使用它,但...
PHP中的count()函数是用来计算数组或容器中元素的个数。这个...
使用 AJAX(Asynchronous JavaScript and XML)技术可以在不...
Ajax(Asynchronous JavaScript and XML)是一种用于改进网页...
本文将介绍如何通过AJAX下载Excel文件流。通过AJAX,我们可以...
Ajax是一种用于客户端和服务器之间的异步通信技术。通过Ajax...