奇怪的Javascript / jQuery if语句问题

时间:2013-08-09 14:55:45

标签: javascript html if-statement

我对一个简单的IF语句有一个奇怪的问题:

<script language='javascript' type="text/javascript">
    function laststep() {

        if(!document.touch.captcha.value == "L5J7K") {
            alert("Ingevoerde code is niet juist.");
            return false;
        }

        if(!document.touch.agree.checked) {
            alert("Accepteer algemene voorwaarden.");
            return false;           
        }
    }
</script>

第二个IF条件正常工作。但第一个不起作用。第一个的值是'NotProvided'。

你们可以帮助我吗?

2 个答案:

答案 0 :(得分:4)

if(!document.touch.captcha.value == "L5J7K"){

应该是

if(!(document.touch.captcha.value == "L5J7K")){

或者

if(document.touch.captcha.value != "L5J7K"){

在您当前的代码中,首先评估!document.touch.captcha.value,然后将结果与"L5J7K"进行比较,这不是您想要的。

答案 1 :(得分:1)

!document...将它转换为布尔值进行比较,它将为false,语句将永远不会成功,因为该字符串是真的。

if (document.touch.captcha.value != "L5J7K"){