jQuery.Validate错误信息位于表单顶部

6
我想知道如何在表单上方显示单个错误信息,而不是单独的字段信息。就像这个表单有的一样:http://jquery.bassistance.de/validate/demo/marketo/step2.htm。我知道这与句柄有关,但不确定如何或在哪里放置它们。
    <script>
    $(document).ready(function(){
    $("#valform").validate();
    });
    </script>

这是我使用所有默认验证的代码

1个回答

3
您应该使用invalidHandler来实现此功能。类似以下的代码应该可以:
$("#myform").validate({
    invalidHandler: function(form, validator) {
        var errors = validator.numberOfInvalids();

        if (errors) {
            $("#error-message").show().text("You missed " + errors + " field(s)");
        } else {
            $("#error-message").hide();
        }
    }
});

示例:http://jsfiddle.net/KheRr/1/

如果您想隐藏默认的错误消息,您应该将""指定为字段和验证类型的错误消息:

$("#myform").validate({
    invalidHandler: function(form, validator) {
        var errors = validator.numberOfInvalids();

        if (errors) {
            $("#error-message").show().text("You missed " + errors + " field(s)");
        } else {
            $("#error-message").hide();
        }
    },
    messages: {
        field1: {
            required: "" // You'll have to do this for each field and validation type.
        }
    }
});

示例:http://jsfiddle.net/KheRr/2/


谢谢,还有一个问题,我该如何隐藏每个字段上显示的默认错误消息? - user1532944

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接