简单的JavaScript,如果不工作

时间:2014-11-19 22:37:46

标签: javascript if-statement

这真的很奇怪,以前从未发生过。我确信解决方案正好在我眼前......

$.post

返回的字符串上的其他简单javascript
$.post("login.php", {
    user_id : user_id
  }, function(result) {

   alert(result); //result if a returned string from login.php: echo 'pswd';

    if (result == "error") { alert(1);
    } else if (result == "pswd") { alert(2);
    } else { alert(3); }
});

由于某种原因,if else语句正在通过result == "pswd"并执行alert(3); 我确信我有类似的情况按预期工作。我错过了什么?

1 个答案:

答案 0 :(得分:-2)

看起来像是错误的。如果你采用下面的代码并省略var声明。它将给出“开始”警报。但是如果不能显示警报。我认为因为此时var在技术上是空的。

或者您在返回的字符串中隐藏了字符。可能想检查返回字符串的字符长度,看看它是否确实是你“看到”的值。

在将var传递给期望返回值的函数之前,可能需要声明var。我在javascript中使用ByRef并不大。所以我可能错了。

<!DOCTYPE html>
<html>
<body>
<script>
    var result = "pswd"

    alert("start");

    if (result == "error") 
    { 
        alert("error");
    } else if (result == "pswd") {
        alert("good"); 
    } else {
        alert("no match"); 
    }

    alert("done");

</script>

</body>
</html>