用户名验证ajax实现

//AJAX核心对象 
    var xmlHttp = null; 
      
    //初始化方法 
    function init(){ 
          //非IE浏览器,用xmlhttprequest对象创建 
          if(window.XMLHttpRequest)  
          { 
              xmlHttp=new XMLHttpRequest(); 
          } 
          //IE浏览器用activexobject对象创建 
          else if(window.ActiveXObject)  
          { 
              xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); 
          } 
    } 
      
    //主调方法,通过这个方法提交数据到后台进行验证 
    function check(){ 
        //需要进行验证的控件 
        var v = document.getElementById("username"); 
        if(v.value != ""){ 
            //初始化xmlHttp对象 
            if(xmlHttp == null){ 
                init(); 
            } 
            //指定数据处理者,即数据最终提交的路径 
            var url = "validateUsername.do?username='"+v.value+"'"; 
            //设置并打开请求通道,如下设置为GET方式发出请求,并且异步处理 
            xmlHttp.open("GET",url,true); 
            // 客户端等待请求的相应,并调用callback方法作出相应的动作 
            xmlHttp.onreadystatechange = callback; 
            //发出请求 
            xmlHttp.send(null); 
        } 
    } 
      
    //回调方法 
    function callback(){ 
        var isInvalidate = document.getElementById("isInvalidate"); 
        //readyState == 4表示请求返回,status == 200 表示请求成功返回 
        if(xmlHttp.readyState != 4 || xmlHttp.status != 200){ 
            //显示等待图片 
            var waitInfo = "<img src='/taskmgr/img/41.gif' alt='等待中...' height='30px' />检测中..."; 
            isInvalidate.innerHTML = waitInfo; 
        } 
        else{ 
            //responseText用来取得服务器端的回应信息 
            var text = xmlHttp.responseText; 
            if(text == 0){ 
                isInvalidate.innerHTML = "这个用户名可用"; 
            }else if(text == 1){ 
                isInvalidate.innerHTML = "这个用户名已经存在!";   
            } 
        } 
    }

相关推荐