jQuery验证 - 带小数值的最大值方法

时间:2016-03-15 18:00:15

标签: jquery jquery-validate

使用the library版本1.11.1我注意到如果我使用

之类的东西
<input data-rule-max="8" />

当我输入值10时,它将正确地无法通过验证。

但是,如果我有类似

的话
<input data-rule-max="8.00" />

我输入10它不会使该字段无效。如果我输入9,则会将其标记为无效。

当我调试时,我可以看到最大规则是接收要使用的字符串值:"10"小于"8.00"

我需要能够验证8和8.75之类的东西。是否有一个技巧可以让最大规则与非整数或其他我应该使用的规则很好地搭配?

(顺便说一句,我可能会在某个时候更新到最新版本的库,所以这个问题只是为了做什么,直到我做出改变。)

1 个答案:

答案 0 :(得分:1)

  

是否有诀窍让max规则与非整数一起玩得很好,

max规则本身正常工作......在使用max属性声明data-rule-max时,您正在讨论一个问题。在这种情况下,updating the plugin是您唯一的解决方案。

  

或我应该使用的其他规则?

max规则是max规则。

如果您无法更新插件,则只需使用HTML 5 max属性而非data-rule-max来声明max规则。

<input type="text" name="foo" max="8.00" />

DEMO(v1.11.1):http://jsfiddle.net/fguxextv/

这是插件如何将属性映射到可用方法的问题。如果在插件中没有修复映射,则可以通过.validate()方法简单地声明规则。在这种情况下,它是"max"

 $('#myform').validate({
    rules: {
        foo: {
            required: true,
            max: 8.00
        }, 
        ....

DEMO 2(v1.11.1):http://jsfiddle.net/fguxextv/3/