jquery验证超过最小值

时间:2011-06-10 05:57:05

标签: jquery jquery-validate

我使用jquery validation plugin进行表单验证。使用min属性工作正常,但我希望它验证严格大于最小值的值。

rules: {
    price: {
        required: true,
        min: 13,
        number: true
    }
}

在我的代码中,我有min: 13,但我不想允许13,只有大于13的值,例如13.10,13.20,14。我该怎么做?

提前致谢!

2 个答案:

答案 0 :(得分:44)

使用$.validator.addMethod创建您自己的自定义方法:

$.validator.addMethod('minStrict', function (value, el, param) {
    return value > param;
});

然后使用:

price: {
    required: true,
    minStrict: 13,
    number: true
}

注意:验证器插件recommend的创建者将Number.MIN_VALUE添加到您提供的值中:

min: 13 + Number.MIN_VALUE

Number.MIN_VALUE是JS可以处理的最小正(非零)浮点数,因此逻辑是下面的两个语句是等价的:

a > b;
a >= b + Number.MIN_VALUE;

但是,由于浮点数存储在内存中的方式,这不起作用。在大多数情况下,舍入将导致b + Number.MIN_VALUE等于bb必须非常小才能实现此目的)。

答案 1 :(得分:-2)

min:13.01,这:

rules:{ price:{ required: true, min: 13.01, number: true } }