Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery表单验证-立即报告所有错误_Javascript_Jquery_Validation - Fatal编程技术网

Javascript jQuery表单验证-立即报告所有错误

Javascript jQuery表单验证-立即报告所有错误,javascript,jquery,validation,Javascript,Jquery,Validation,我已经花了大约一年的时间来处理这样的验证: $(document).ready(function(){ $('#contact-form').submit(function(){ var name = $('#inputnimi').val(), email = $('#inputemail').val(), message = $('#inputmessage').val(); var nam

我已经花了大约一年的时间来处理这样的验证:

$(document).ready(function(){


    $('#contact-form').submit(function(){
        var name = $('#inputnimi').val(),
            email = $('#inputemail').val(),
            message = $('#inputmessage').val();

            var nameerror = "<h4>Puuttuva kenttä</h4>",
            emailerror = "<h4>Puuttuva kenttä</h4>",
            messageerror= "<h4>Puuttuva kenttä</h4>";

            if(name == ""){
                $('.message-console').html(nameerror);
                return false;
            }

            if(email == ""){
                $('.message-console').html(emailerror);
                return false;
            }

            if(message == ""){
                $('.message-console').html(messageerror);
                return false;
            }
            $.ajax({
            type: "POST",
            url: "contact.php",
            data:  form-data,
            dataType: "text",
            error: function(){alert("ERROR");

            },
            success: function() {
                alert("success");
            }


            });
            return false;



    });
});

因此,我想在没有任何插件的情况下验证表单,并立即显示所有错误(如果有)。但是怎么做呢?

你可以试试这样的方法:

if(!(name&&email&&message))
{
    //error logic
}
但是,如果任何值等于0,验证将再次触发,因此您最好使用

if((name&&email&&message)=="")
{
    //error logic
}

不要每次都让它返回false。然后你可以做如下的事情:

$('.message-console').html('');

if(name == ""){
  $('.message-console').append(nameerror);
 }
 /*others*/

尽管我会按照dnagirl的建议去做,并使用它——就额外的插件而言,它并没有那么糟糕,而且使用起来也很简单。

尽管你不想使用插件,但阅读jQuery的验证插件的源代码非常有启发性。它已经可以做你想做的事情了,所以这是一个学习如何做的好地方。@dnagirl我在任何地方都找不到它,link?为什么
名称或电子邮件或消息等于空
会正常工作?它不是或是逻辑运算,实际上上面的代码意味着如果任何字段有空值,就会触发验证。我真的不想使用插件进行验证,但谢谢你的提示。
$('.message-console').html('');

if(name == ""){
  $('.message-console').append(nameerror);
 }
 /*others*/