繁体   English   中英

代码片段不起作用

[英]Snippet of code not working

下面是表单验证脚本的简化代码片段。 这是行不通的...

提交表单并且用户将“inputfield”留空时,会弹出第一个警报。 用户在“inputfield”中输入内容后,当用户单击“提交”时,会弹出第二个警报。

之后,脚本应返回false并继续验证。 我需要将两个警报包括在同一个其他内容中。 我究竟做错了什么? 警报没有显示,表单验证忽略了这部分代码......

    } else if (myform.inputfield.value=="") {
    alert ('Please enter something in the text field!');
    }
    if (myform.inputfield.value!=="") {
    alert ('Thank you for entering something in the field!');
    return false;
    }

我同意使用document.getElementById或jQuery $('#input1')。val()

 <script type="text/javascript">
    function validate() {
        if (document.getElementById('input1').value == "") {
            alert('Please enter something in the text field!');
        }
        if (document.getElementById('input2') !== "") {
            alert('Thank you for entering something in the field!');
            return false;
        }
    }
</script>
</head>
<body>
    <form onsubmit="return validate()">
        <input id="input1" />
        <input id="input2" />
        <input type="submit" value="OK" />
    </form>
</body>

您可能在指定的代码行之前有一个return语句?

声明一个标志并返回它是不是更好? 考虑以下示例:

var validationResult = true;

...
} else if (myform.inputfield.value=="") {
   validationResult = false;
   alert ('Please enter something in the text field!');
}
if (myform.inputfield.value!=="") {
   alert ('Thank you for entering something in the field!');
   validationResult = false;
}

return validationResult;

暂无
暂无

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

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