1

我将 jquery 验证插件与 jQuery 的表单插件一起使用。

我打开了电子邮件格式的验证,它可以在运行时开始验证电子邮件并立即告诉用户他/她输入了无效的电子邮件格式。

但是,此检查也触发错误消息框是不行的 - 有没有办法强制验证()在输入旁边显示错误标签但同时不触发/显示 error_box?(结果) 。我想在用户单击提交按钮后向结果框中添加任何内容 - 可能吗?

编辑:我认为这很清楚,显然不是,所以我添加了这段代码:)

编辑 3:我要去的地方:我确实想要目标中的消息:.result但仅在单击提交按钮后 - 不是任何时候,现在应该更清楚:)

      var zadost = $("#validate_zadost").validate({
          focusInvalid: false,
          submitHandler: function(form) {
                  $(form).ajaxSubmit({
                          target: ".result",
                          success: function(){ zadost.resetForm(); }
                  });
          },
          showErrors: function(errorMap, errorList) {
            $(".result")
              .html("<div class='error_box'><h1>Nebyly vyplňeny povinné údaje nebo byly vyplňeny špatně!</h1><p>Žádost nebyla odeslána - prosím doplňte povinné údaje (ve správném formátu). (červeně zvýrazněny)</p></div>");
            this.defaultShowErrors();
          },
          errorPlacement: function(error, element) { //error message and JQUERY element coming...
            if( element.is(':checkbox') ) error.insertBefore(element).addClass('zadostErrorCheckbox');
              else error.insertAfter(element);
          }

  });
4

1 回答 1

2

请参阅文档。

报价标题:

“如何关闭不提交验证结果?”

听起来你想关闭所有的“事件”......

$('#myform').validate({
    // options & rules,
    onkeyup: false,    // prevent validation on every key up
    onfocusout: false, // prevent validation after leaving field
    onclick: false     // prevent validation when clicking radio and checkbox
});

不要使用该onsubmit选项,因为它已经是默认行为(将其设置为true会破坏插件)。

引用操作:

“但是,此检查也触发错误消息框是不行的 - 有没有办法强制validate()在输入旁边显示错误标签但同时不触发/显示error_box?(结果)。我想在用户单击提交按钮后向结果框中添加任何内容 - 可能吗?”

我看不到你的代码,所以我不知道你做了什么,但是,在输入字段旁边只显示错误消息标签已经默认行为。您的代码中的某些内容一定会导致其他事情发生在这里。

编辑:showErrors如果您不想显示错误框并且只在输入元素旁边的标签中显示错误,请删除整个回调函数。

于 2013-09-16T14:48:31.503 回答