来自两个的jquery一个字段为空,表单提交被阻止

时间:2014-09-13 17:40:35

标签: jquery forms validation field

如果在未填写两个字段后显示错误消息,然后填写第二个字段(#phone),则表单仍然被阻止。表单也会在第一次发送时被阻止,甚至第二个字段也被填充。当第一个字段(#email)不为空时,表单总是被提交。

<form action="http://m.onet.pl" id="form" method="post">
<ul style="list-style:none">
    <li>
    <input type="text" id="email" name="email" placeholder="E-mail" /> 
    <input type="text" id="phone" name="phone" placeholder="Phone" /> 
    </li>
<li><button type="submit" name="sendad">Send form</button></li>
</ul>
</form>

的jQuery

    $("#form").submit(function(e){
        if(($('#email').val().length === 0 || $('#phone').val().length === 0)) {
            e.preventDefault();
            $('#msg').html("One of two fields is reuired");
        } 
    });

参数有什么问题?

http://jsfiddle.net/1do6332d/1/

1 个答案:

答案 0 :(得分:1)

http://jsfiddle.net/khahu9gy/

简单错误:使用&&而不是||

$("#form").submit(function(e){
    if(($('#email').val().length === 0 && $('#phone').val().length === 0)) {
        e.preventDefault();
        $('#msg').html("One of two fields is required");
    } 
});