js字符串对比的空格问题

来源:互联网 发布:淘宝怎么开好直通车 编辑:程序博客网 时间:2024/06/10 09:18

遇到个Ajax问题,折腾了一会儿,还是太粗心了,最后通过逐步排查+万能的搜索解决了,记录一下。

function createXMLHttpRequest(){
if(window.ActiveXObject){
return new ActiveXObject("Microsoft.XMLHTTP");
} else if(window.XMLHttpRequest) {
return new XMLHttpRequest();
}
}
var xmlHttp;
function checkUserExists(){
var f = document.form1;
var username = f.username.value;
if(username==""){
document.getElementById("message").innerHTML="用户名不能为空";
f.username.focus();
return false;
}
var url = "CheckUserServlet?username=" + username;
xmlHttp = createXMLHttpRequest();
xmlHttp.onreadystatechange = processRequest;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}
function processRequest(){
if(xmlHttp.readyState == 4){
if(xmlHttp.status == 200){
var blag = xmlHttp.responseText;
//alert(blag);
if (blag=="false") {
//alert(blag);
document.getElementById("message").innerHTML="恭喜,用户名可以使用";
}else{
//alert(blag);
document.getElementById("message").innerHTML="用户名已经被注册!";
}
}
}
}

js的if判断始终无法正常判断,通过alert检查servlet返回数据正常。但是始终无法进入if的条件判断,无论blag值为true or false都执行else部分。
最后发现原来问题出在if的条件里面
if (blag==”false”)改为if (blag.trim()==”false”)
去除一下空格再判断就正常了。不知道是不是因为浏览器的缘故,servlet返回的值为什么会包含空格。

0 0
原创粉丝点击