javascript - 清除之前的 JQuery 验证错误消息

标签 javascript jquery html

我对同一字段有两个验证,并且我正在使用 jQuery Validator,我想知道如何清除以前生成的错误消息。

我现在的问题是,如果我有空字段的错误,如果我有另一个错误(例如值必须高于 10),则永远不会被删除。当值为 7 时,我仍然显示“字段不得为空”。

我在谷歌上搜索了这一点,所有建议都是重置验证形式。

var validator = $("#myform").validate(

);

validator.resetForm();

但是,如果我这样做,当然不会显示错误消息。我只需要在检查新闻之前清除 DOM 中的先前错误即可。

有人知道另一种直接与 DOM 交互的方法吗?

我正在尝试这个但没有成功。

if ($.validator.defaults.onfocusout) {
    $(element).unbind(".validate-biggerThanOrigin").bind("blur.validate-biggerThanOrigin", function () {
        $(element).valid();
    });
}

我们像这样定义验证。

     $.validator.addMethod("biggerThanOrigin", function (value, element, param) {
            return biggerThanOrigin(value, element, param, validationMessages.biggerThanOrigin, validationMessages.referenceForkEmpty);
        });

        $.validator.addMethod("lessThanOrigin", function (value, element, param) {
            return lessThanOrigin(value, element, param, validationMessages.lessThanOrigin, validationMessages.referenceForkEmpty);
        });

问候。

最佳答案

您应该为错误提供单独的验证消息。

$("#myform").validate({
  rules: {
    name: {
     "required": true,
     "minlength": 10
  },
  messages: {
    name: {
      required: "Please specify your name",
      minlength: "Your name must be atleast 10 characters long"
    }
  }
});

这应该适用于您的情况。

编辑:

这是一个工作 FIDDLE

关于javascript - 清除之前的 JQuery 验证错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31137741/

相关文章:

php - 需要 php 数组转 json 的帮助

html - 子 DIV 不会显示在父 DIV 内部

javascript - Angular 1.x - $scope 的顺序发生了什么?

javascript - 鼠标点击时触发 Hammer.js 拖动/滑动行为

jquery - 计算选中的复选框的数量

javascript - 将 HTML 导入到另一个 HTML 导入中

javascript - 在 javascript 中为表创建自定义库

html - 将 `htmlDocPtr` 写入字符串

javascript - Node express : Unrecognized content-type

javascript - 如何检查 jquery 元素是否为 `del` 标记?