Validation MVC4添加了一个自定义的不引人注目的验证器

Validation MVC4添加了一个自定义的不引人注目的验证器,validation,asp.net-mvc-4,Validation,Asp.net Mvc 4,我有一个表单,其中的元素可能包含在折叠的手风琴div中。当有人提交表单时,低调的验证器捕捉到一个或多个“隐藏”表单元素上的错误,我希望折叠的手风琴打开,以便他们可以看到自己的错误 在做了一些研究之后,我在这里找到了一个建议,建议我自己制作一个不引人注目的适配器。所以我做到了,就在这里: $.validator.unobtrusive.adapters.add( 'collapsevalidation', function () { var tabs = $('.collapse').n

我有一个表单,其中的元素可能包含在折叠的手风琴div中。当有人提交表单时,低调的验证器捕捉到一个或多个“隐藏”表单元素上的错误,我希望折叠的手风琴打开,以便他们可以看到自己的错误

在做了一些研究之后,我在这里找到了一个建议,建议我自己制作一个不引人注目的适配器。所以我做到了,就在这里:

$.validator.unobtrusive.adapters.add(
'collapsevalidation',
  function () {
   var tabs = $('.collapse').not('.in');
   //console.log("tabs.length: " + tabs.length);
   $(tabs).each(function () {
       if ($(this).has('.field-validation-error').length) {
           id = "#" + $(this).attr('id');
           //console.log("id: " + id);
           $("[data-target='" + id + "']").collapse('show');
       }
   });
}(jQuery))

适配器插件已经添加到我的页面中,现在我正试图找出如何“钩住”它,但我似乎无法做到这一点。到目前为止,我已将以下内容添加到我的页面:

jQuery.validator.unobtrusive.adapters.add("collapsevalidation");
然而,这似乎不起作用。当我在提交时产生错误时,console.log命令行不能写入

我知道这是一个自定义适配器,因为它不适用于特定元素,也不返回任何东西,比如bool


请有人帮我完成这个。谢谢

虽然我没有直接找到上述问题的答案,但我确实通过以下方法得到了我想要的结果:

$("form").bind("invalid-form.validate", function () {
   //My code here
}

虽然我没有直接找到上述问题的答案,但我确实通过以下方法得到了我想要的结果:

$("form").bind("invalid-form.validate", function () {
   //My code here
}