我的ajax代码有什么问题..不要进入if语句

时间:2012-07-11 06:20:13

标签: ajax

请耐心等待..我对ajax很新,并且我的代码遇到了一些问题 我的代码如下。我试图从我的servlet获取响应并使用alert显示它...任何人都可以让我知道我的代码有什么问题:

function checkempid(value) {
    var status = false;
    xmlHttp=GetXmlHttpObject();
    var urlemp="postemployee";
    urlemp=urlemp+"?employeeId="+value;
    xmlHttp.onreadystatechange=stateChangedemp ;
    xmlHttp.open("GET",urlemp,true);
    xmlHttp.send(null);

    function stateChangedemp() { 
        if(xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){ 
            var showdata = xmlHttp.responseText;
            alert(showdata);

            **if(showdata=="Congratulations on your new account!"){
                alert("inside if");
                saveReportFinished(xmlHttp.responseText == 'complete');
            }**
            else{
                alert("inside else");
                saveReportFinished(false); 
            }
        }
    }

    function saveReportFinished(success) {
        if (success == true){
            status = true;
        }
        else {
            status = false;
        }
    }

    function GetXmlHttpObject(){
        var xmlHttp=null;
        try {
            xmlHttp=new XMLHttpRequest();
        }
        catch (e) {
            try {
                xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
            }
            catch (e) {
                xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
            }
        }

        return xmlHttp;
    }

    return status;
}

请用粗体查看我的if语句。它永远不会进入if语句。它总是进入其他..任何人都可以让我知道可能是什么问题???提前谢谢你。

1 个答案:

答案 0 :(得分:0)

现在我猜那个showdata永远不会是“祝贺你的新帐户!”可能有空格,html格式或任何弄乱你尝试做的事情。

更好地使用状态代码来检测操作是否正常(如果可以,返回“201 - created”)。当您不能创建任何客户端错误代码时,请使用200(“确定”)。

如果您无法使用状态代码,请尝试在响应中使用xml或json编码,这可以解析并导致确定结果