Ajax在if else语句中返回字符串意外结果

时间:2012-02-15 05:09:20

标签: ajax jquery

我已检查返回字符串是“已添加”还是“已使用”或“假”,但每次执行最后一个语句时都是document.write(theresult)。有什么问题,我期待返回字符串是“已使用”然后警告“1”。请多多帮助,谢谢。

function add_member()
    {
    var xmlhttp;

    if (window.XMLHttpRequest)
      {// code for IE7+, Firefox, Chrome, Opera, Safari
      xmlhttp=new XMLHttpRequest();
      }
    else
      {// code for IE6, IE5
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    xmlhttp.onreadystatechange=function()
      {
      if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
       // document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
      var theresult = xmlhttp.responseText;

            if (theresult == "used") { 
            alert("1");
            }

            else if (theresult == "added") { 
            alert("2");
            }

            else if (theresult == "false") { 
            alert("3");
            }

            else
             { 
            document.write(theresult);
            }



        }
      }
xmlhttp.open("GET","add.php?addnew=true&email=" + document.memberform.email.value + "&tel=" + document.memberform.tel.value,true);
xmlhttp.send();
}

1 个答案:

答案 0 :(得分:0)

@JBL即使您为其设置了字符串,Ajax响应文本也不是普通字符串。你无法比较它。如果要传递字符串并进行比较,请在响应头中执行。