jQuery在基于属性的验证上验证.addMethod

时间:2014-08-30 11:54:33

标签: javascript jquery jquery-validate

我正在尝试基于数据属性进行验证。 但是,当我添加numeric方法时,它无效。

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

我在文档中找到的内容: “名称 类型:字符串 用于标识和引用它的方法的名称;这必须是有效的JavaScript标识符“

所以我有2个元素$('[data-v-numeric="numeric"]')以及我认为[data-v-numeric="numeric"]是有效的JavaScript选择器的方式。但不知怎的,它不起作用。那时我犯了错误?

1 个答案:

答案 0 :(得分:3)

您错误地使用了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']);
// ...