var xmlhttp;
 function $(obj){
 return document.getElementById(obj);
 }
function checkUser(obj){
      
       $("unameMsg").innerHTML="";
var userName=obj.value;
alert(userName);
if(userName==null||userName==""){
$("unameMsg").innerHTML="用户名不能为空";
return;
}

try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
try {
xmhttp = new XMLHttpRequest();
if (xmlhttp.overrideMimeType) {
xmlhttp.overrideMimeType("text/xml");
}
} catch (e) { }
}
}

xmlhttp.open("get","checkuser?uname="+userName,true);
xmlhttp.send(null);
xmlhttp.onreadystatechange=function(){
if(xmlhttp.readystate==4){
if(xmlhttp.status==200){
 alert(xmlhttp.responseText);
 
  if(xmlhttp.responseText=="false"){
 
  $("unameMsg").innerHTML="用户名不存在";
  }
  }
  }
};
}
这段代码红色部分是 我用responseText接收servlet 的boolean值。,,,能接收到,但是判断。。就是不出来啊。老师跳过这句

解决方案 »

  1.   

    alert(xmlhttp.responseText);这里显示的什么啊。你要去掉空格换行等不可见字符
      

  2.   

    不知道java输出bool变量会不会将第一个字母变大写,vbs会这样,可能是大小写没匹配,也可能是#2楼说的,有空白符号if(xmlhttp.responseText.replace(/^\s*|\s*$/,'').toLowerCase()=="false"){
      

  3.   

    if(xmlhttp.responseText=="false")
    alert(typeof(xmlhttp.responseText)) // 看看是什么类型
    "false" -- 它是字符串