繁体   English   中英

AJAX responseText字符串比较

[英]AJAX responseText String Compare

与我的AJAX脚本的结果相比,我无法做出准确的字符串。 由于某种原因,我的if语句总是失败。 通过删除if测试,我可以看到返回了正确的值(“成功”),但是当我将其保留时,它的计算结果为false。 我究竟做错了什么? 谢谢。

HTML档案:

PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
    <title>Sign In</title>
    <link rel="stylesheet" type="text/css" href="styles/mystyles.css" media="screen" />
</head>

<body>

    <script language="javascript" type="text/javascript">
    <!-- 
    //Browser Support Code
        window.onload = function ajaxFunction() {
            document.loginform.onsubmit = attemptLogin;
        }

        function attemptLogin() {
            var username = document.getElementById("name").value;
            var password = document.getElementById("password").value;
            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) {
                    var response = $.trim(xmlhttp.responseText).toLowerCase();
                    //var response = xmlhttp.responseText.trim();
                    //var response = xmlhttp.responseText;
                    if (response == "success") {
                    //    window.location.href = "dashboard.html";
                    //} else {
                        document.getElementById("feedback").innerHTML=response;
                    //}
                }
            }

            xmlhttp.open("GET",
                    "scripts/login.php?username="+username+"&password="+password
                    ,true);
            xmlhttp.send();
            return false;
        }
    //-->
    </script>

    <div id="frame">
        <div id="page">
            <img id="mainpic" src="images/banner.png">

            <div id="leftsidebox"></div>

            <div id="stylized" class="myform">
                <form id="form" name="loginform">
                    <h1>Mobile App Data Administration</h1>
                    <p>Sign in to update, modify, or delete data used by the mobile app.</p>

                    <label>Username
                        <span class="small">Enter your username</span>
                    </label>
                    <input type="text" name="username" id="name" autofocus="autofocus" />

                    <label>Password
                        <span class="small">Enter your password</span>
                    </label>
                    <input type="password" name="pass" id="password" />

                    <div id="feedback"></div>

                    <button type="submit">Log In</button>

                </form>

                <button type="submit" class="lowerbutton" onClick="parent.location='newuser.html'">New User</button>
            </div>

        </div>
    </div>
</body>

</html>

php脚本的相关部分只是最后一行:

echo "success";

试一下此功能,看看有什么警报

function attemptLogin()
{
    var username = document.getElementById("name").value;
    var password = document.getElementById("password").value;
    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)
        {
            var response = xmlhttp.responseText;
            if (response == "success")
            {
                alert("log you in");
                window.location.href = "dashboard.html";
            }
            else
            {
                alert("not equal to success");
                document.getElementById("feedback").innerHTML = response;
            }
        }
    }

    xmlhttp.open("GET", "scripts/login.php?username=" + username + "&password=" + password, true);
    xmlhttp.send();
    return false;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM