xmlhttp.responsetext 获取servlet的输出值比较出现问题

来源:互联网 发布:网络女神雅典娜是谁 编辑:程序博客网 时间:2024/06/05 02:28

在用xmlhttp.responsetext获取servlet中传过来的时候明明传来的值一样,但是判断的时候却显示不一样。

下面是我的代码:

 function checkUseridCallback(){ // 回调函数  

        if (xmlHttp.readyState == 4){           // 数据返回完毕  
            if (xmlHttp.status == 200){         // HTTP操作正常  
               var text = xmlHttp.responseText;// 接收返回内容  
                if (text=="true"){  
                    //flag = false;               // 无法提交表单  
                    document.getElementById("msg").innerHTML = "用户名ID重复,无法使用";  
                }
                else if(text=="false"){  
                    //flag = true;                // 可以提交表单  
                    document.getElementById("msg").innerHTML = "恭喜!此用户ID可以注册";  
                 } 
                else
               {  
                    //flag = true;                // 可以提交表单  
                   document.getElementById("msg").innerHTML = text;  
                 } 
            }  
        }  
    }  

  



但是我写代码的过程中发现 xmlHttp.responseText 的内容的确 为“true” 但是判断的时候还是不相等

原因很简单,就是在你的servlrt输出的时候用out.println("true")  这样导致输出的时候会在  返回值得后面多一个换行符

因此在与"true"比较的时候出现不相等的情况

所以你只要把out.println改成 Out.print()  或者 out.write() 就可以解决了。

0 0
原创粉丝点击