5

我在这里根据这个例子实现了一个错误摘要:

虽然我让它显示,但一旦没有剩余错误,我不知道如何隐藏它。

我在这里摆弄一下来演示它:

在两个字段中的任何一个中输入任何内容,当错误消息消失时,摘要仍然存在。一定有一个事件我需要订阅,但我想不通。

$(document).ready(function () {

  var validator = validation_rules('#myform');
  validator.form();

  function validation_rules(form) {

    $.validator.addClassRules("fillone", {
      require_from_group: [1, ".fillone"]
    });

    var validator = $(form).validate({
      errorPlacement: function (error, element) {
        var field_error = $(form).find('#id_' + element.attr('name')).siblings('.field_error');
        if (field_error.length > 0) {
          error.appendTo(field_error);
        }

        $(field_error).show();
      },
      invalidHandler: function () {
        $("#validation_summary").text(validator.numberOfInvalids() + " field(s) are invalid");
      }

    });
    return validator;
  }

});
4

1 回答 1

4

使用 errorContainer 选项。当表单变为有效/无效时,这将显示/隐藏指定的元素

错误容器:{“#validation_summary”}

示例在http://jsfiddle.net/eDk2m/7

阅读评论后编辑

有一个事件要挂钩 - 一个很好的例子是插件演示的custom-methods-demo.html页面。看起来像这样

var validator = $("form").bind("invalid-form.validate",  
function() { 
 var errorCount = validator.numberOfInvalids(); 
 // do other stuff here
}).validate({...});
于 2013-01-10T12:25:24.230 回答