4

我正在使用 JQuery 验证插件。我想指定maxlength其中一个字段。可以指定如下。

rules: {
   Message: {
      required: false,
      maxLength: 200
   }
}

但是我不想在外部定义规则,而是想在 html 输入代码中指定规则

如同 :

<input type="text" name="AssistanPhone" value="" class="required"  />

在上面的示例中,“必需”是通过类指定的。同样,我如何指定 jquery 插件可以识别的 maxlength 并在长度超过时给出错误消息?

谢谢!

4

4 回答 4

6

不资本Ll

前任:

$( "#myform" ).validate({
  rules: {
    field: {
      required: true,
      maxlength: 200
    }
  }
});

插件演示

于 2013-08-22T07:11:21.013 回答
5

据我所见,您无法通过属性指定消息,但maxlength可以将其指定为属性

<input type="text" name="AssistanPhone" value="" required maxlength="3"  />

演示:小提琴

于 2013-08-22T07:16:29.627 回答
0

我自己更新了验证器的 javascript 代码(所以我现在坚持使用我的 1.8.1 版本而不是升级),但这是我所做的(大约第 767 行):

classRules: function(element) {
    var rules = {};
    var classes = $(element).attr('class');
    classes && $.each(classes.split(' '), function() {
        if (this in $.validator.classRuleSettings) {
            $.extend(rules, $.validator.classRuleSettings[this]);
        }
        if (this.toLowerCase().lastIndexOf('maxlength-', 0) === 0) { // starts with
            var x = parseInt(this.substring(10)); // take number after 'maxlength-'
            $.extend(rules, {maxlength: x});
        }
    });
    return rules;
},

我为“maxlength-”添加了额外的 if-test,所以现在我可以添加一个像“maxlength-10”这样的类来限制为 10。当然我也可以添加 minlength 等等。

于 2014-08-04T14:29:11.817 回答
-1

  $("#FormID").validate({
        rules: {
            PriorityDDL: {
                required: true
            },
            Title: {
                required: true
            },
            Text: {
                required: true,
                maxlength: 300
            },

            date: {
                required: true
            },
            reportfile: {
                required: true
            }
        },
        messages: {
            PriorityDDL: {
                required: "Please select priority"
            },
            Title: {
                required: "Please enter title"
            },
            Text: {
                required: "Please enter message",
                maxlength:"maxLength is 300 characters"
            },
            date: {
                required: "Please select date"
            },
            reportfile: {
                required: "Please select file"
            }
        }
    });

于 2019-11-06T10:22:49.603 回答