xmlHTTP

来源:互联网 发布:京东算法工程师面试 编辑:程序博客网 时间:2024/04/28 02:12

var Checker = new function() {

    this._url = "checker.jsp";                                                                      //服务器端文件地址

    this._infoDivSuffix = "CheckDiv";                                                      //提示信息div的统一后缀

    //检查普通输入信息

    this.checkNode = function(_node) {

        var nodeId = _node.id;                                                                          //获取节点id

        if (_node.value!="") {

            var xmlHttp=this.createXmlHttp();                                               //创建XmlHttpRequest对象

            xmlHttp.onreadystatechange = function() {

                if (xmlHttp.readyState == 4) {

                    //调用showInfo方法显示服务器反馈信息

                    Checker.showInfo(nodeId + Checker._infoDivSuffix,

                                        xmlHttp.responseText);

                }

            }

            xmlHttp.open("POST", this._url, true);

            xmlHttp.setRequestHeader(

                                     "Content-type","application/x-www-form-urlencoded");

            xmlHttp.send("name=" + encodeURIComponent(_node.id) +

                         //发送包含用户输入信息的请求体

                         "&value=" + encodeURIComponent(_node.value));

        }

    }

    //显示服务器反馈信息

    this.showInfo = function(_infoDivId, text) {

        var infoDiv = document.getElementById(_infoDivId); //获取显示信息的div

        var status = text.substr(0,1);                                               //反馈信息的第一个字符表示信息类型

        if (status == "1") {

            infoDiv.className = "ok";                                         //检查结果正常

        } else {

            infoDiv.className = "warning";                               //检查结果需要用户修改

        }

        infoDiv.innerHTML = text.substr(1);                                 //写回详细信息

    }

    //用于创建XMLHttpRequest对象

    this.createXmlHttp = function() {

        var xmlHttp = null;

        //根据window.XMLHttpRequest对象是否存在使用不同的创建方式

        if (window.XMLHttpRequest) {

           xmlHttp = new XMLHttpRequest();                             //FireFox、Opera等浏览器支持的创建方式

        } else {

           xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");//IE浏览器支持的创建方式

        }

        return xmlHttp;

    }

 
原创粉丝点击