jQueryValidate中的奇怪数字验证

时间:2016-08-16 14:32:05

标签: jquery jquery-validate

我有一个像这样的文字字段:

$("#someForm").validate({
    rules: {
        someNumber: {
            number: true
        }
    }
});

正如预期的那样,4,123,1415等输入的验证失败。

但是,它会验证以下输入3,141

为什么?

1 个答案:

答案 0 :(得分:1)

number规则正在寻找"valid decimal number"

  

正如预期的那样,对于4,12或3,1415等输入的验证失败。

     

然而,它验证了以下输入3,141。为什么呢?

因为3,141代表“三千一百四十一”

逗号称为“千位分隔符”,在此位置有效...

  

在欧洲语言中,大数字以千组为单位读取,分隔符(使用时每三位数出现)可称为“千位分隔符”

https://en.wikipedia.org/wiki/Decimal_mark#Digit_grouping

要忽略逗号,句号,减号以及数字以外的任何内容,请改用the digits method ...

  

使元素仅需要数字

DEMO:jsfiddle.net/hv0pw8ks/