Jquery验证,开放式手风琴

时间:2014-02-17 10:13:57

标签: jquery validation jquery-ui-accordion

我们正在使用jQuery Accordion&同一页面的验证......表格中有3支手风琴。

验证工作完美,但我想要做的是,如果其中一个字段无效,我希望手风琴在无效字段中打开。

我正在尝试在InvalidHandler上执行此操作,但无法将其打开,我尝试使用以下内容:

invalidHandler: function(event, validator, element) {

  $('#form1').find('error.error-message').parents('fieldset').next().show();

},

有人设法做到了吗?

感谢。

4 个答案:

答案 0 :(得分:1)

管理得到这些工作人员。

我刚从代码中删除了一个.parents(),所以它现在看起来像这样:

$('#form1').find('.error.error-message').parents().show();

感谢。

答案 1 :(得分:0)

如果是类添加.

$('#form1').find('error.error-message').parents('fieldset').next().show();

$('#form1').find('.error.error-message').parents('.fieldset').next().show();

答案 2 :(得分:0)

如果您使用的是jQuery UI Accordion并且“错误”是类名,请尝试下面的代码。

$('#form1').find('.error.error-message').parent().parent().next().next().show();

答案 3 :(得分:0)

假设我们有手风琴及其内部div。然后假设内部div具有多个必需的字段验证器控件。这样的文字就像是'请这个字段是必需的'

然后我们发现所需的验证器并匹配内部文本已经'请'然后找到壁橱手风琴div指数。并设置为索引以显示第一个。     低于$(' [id * = MasterCard]')找到内部文字的ID,例如' MasterCard'

///managing the display of accordion tab has validation failure               


  $('[id*=MasterCard]').each(function () {
      var reqID = this.style.display;
      if (reqID == 'inline' && this.innerText.indexOf('Please') > -1) {
          var index = $(this).closest(".ui-accordion-content")
                             .index(".ui-accordion-content");
          $("#accordion").accordion({
              active: index
          });
      }
  });