小编典典

使用jQuery验证插件显示摘要和单个错误消息

ajax

如何显示jQuery插件的单独错误消息和摘要?

我实际上发现了一个类似的问题,但是它只是引用了一些我可以使用的钩子,但是我不确定从哪里开始。

我得到了显示单个错误消息的部分,但是我需要在提交时在警报框中显示摘要,并且可以在此处找到插件。

刚刚了解了如何,感谢David的代码,以及我的后续问题-警报框为“名字:请输入一个有效的名字”。

代码如下:

$(document).ready(function() {
    var submitted = false;
    ('.selector').validate({
        showErrors: function(errorMap, errorList) {
            if (submitted) {
                var summary = "You have the following errors: \n";
                $.each(errorMap, function(key, value) {
               summary += key + ': ' + value + "\n";
                });
                alert(summary);
                submitted = false;
            }
            this.defaultShowErrors();
        },
        invalidHandler: function(form, validator) {
            submitted = true;
        }
    });
});

阅读 185

收藏
2020-07-26

共1个答案

小编典典

正如链接的问题所述,showErrors只要显示错误,就会调用回调。您可以使用它来创建摘要并发出警报。然后,您可以调用this.defaultShowErrors()以显示正常的单个错误消息。

默认情况下,showErrors被调用用于许多事件(提交,抠像,模糊等)。您可以禁用它们,也可以使用invalidHandler仅在提交无效表单时才调用的方法。

例:

$(document).ready(function() {
    var submitted = false;
    ('.selector').validate({
        showErrors: function(errorMap, errorList) {
            if (submitted) {
                var summary = "You have the following errors: \n";
                $.each(errorList, function() { summary += " * " + this.message + "\n"; });
                alert(summary);
                submitted = false;
            }
            this.defaultShowErrors();
        },          
        invalidHandler: function(form, validator) {
            submitted = true;
        }
    });
});

请参阅此处以获取可以传递给validate方法的选项的完整列表。

2020-07-26