基于属性验证的jQueryValidate.addMethod

jQuery Validate .addMethod on attribute based validation

本文关键字:验证 jQueryValidate addMethod 属性 于属性      更新时间:2023-09-26

我正在尝试进行基于数据属性的验证。但是,当我添加numeric方法时,它不起作用。

    $.validator.addMethod('[data-v-numeric="numeric"]', function(value, element) {
        console.log(1);
        return !isNaN(parseInt(value));
    }, objLanguage['validation_numeric']);

我在文档中发现:"名称类型:字符串用于识别和引用它的方法的名称;这必须是一个有效的JavaScript标识符"

所以我有两个元素$('[data-v-numeric="numeric"]'),以及我如何认为[data-v-numeric="numeric"]是有效的JavaScript选择器。但不知怎么的,它不起作用。我当时在哪里犯了错误?

您使用jQuery.validator.addMethod不正确。请参阅文档http://jqueryvalidation.org/jQuery.validator.addMethod/

var errorMessages = {
    'validation_integer': "Must be integer input.",
    'validation_positive': "Must be positive integer input.",
    // ...
};
$.validator.addMethod('integer', function(value, element) {
        return !isNaN(parseInt(value));
}, errorMessages['validation_integer']);
$.validator.addMethod('positive', function(value, element) {
        return !isNaN(parseInt(value)) && parseInt(value) >= 0;
}, errorMessages['validation_positive']);
// ...