'number:true'在jquery验证中需要字段

Kan*_*iya 5 javascript jquery jquery-validate

我正在使用jQuery Validation插件

我希望我的一个字段是一个数字,但它不是必填字段.

问题是,当我设置时number: true,它需要该字段.这是为什么?我试图添加required: falsenumber: true,但无济于事.

这是我的代码:

name : {
    required:false,
    number:true
}
Run Code Online (Sandbox Code Playgroud)

我没有设置错误消息,但它显示默认错误消息:"请输入有效数字."

Esa*_*ija 6

在源代码中,他们使用此正则表达式来验证数字:

/^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/
Run Code Online (Sandbox Code Playgroud)

当字段为空("")时,它不通过测试:

/^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/.test("")
//false
Run Code Online (Sandbox Code Playgroud)