[英]custom validation rule for integer range in jquery validation engine
我正在使用JQuery Validation Engine库。 我试图通过Regex
或custom method
创建自定义验证来验证字段输入。
我建议将此验证名称作为custom integer validation containing integer range or some integers separated by comma(s) or combination of both
。
以下是标准:
89
12-18
或15-18
但不是19-3 (range should between min to max)
1-6, 5, 8-13, 7
。 但不是 -3-5 (not -3)
或3-7-, 10 (not 7-)
我试过这个自定义规则:
"integerRangeComma": {
"regex": /^(([0-9]+)([\,]([0-9]+))?|([\,]([0-9]+))?)$/,
"alertText": "* Invalid floating decimal number"
},
我进行上述验证的目的是:
我有一个总文件列表,我们假设12
。 我在表单中创建了一个文本框,以接受他喜欢在他的个人资料中添加的文件。 上述标准应适用于此。
我的下一个问题是,我还必须验证用户输入的数字不大于12 (my presumption)
。
如何通过创建自己的自定义规则或其他方法来实现此目的。
提前致谢。
用正则表达式做数学总是很痛苦,你应该解析它并用代码检查不超过12的条件。 但是,通过使用这个简单的例子是可能的
[0-9]|1[12]
那么您输入单个整数或范围的组合将是
number(-number)?
对于一个输入,或两个commaseparated的是
input(\s*,\s*input)?
如果您想要两个以上,请使用*
表示无限制,或使用{0,n}
表示有限的重复而不是?
。
所以,你得到了
var integerRangeComma = {
"regex": /^([0-9]|1[12])(-[0-9]|-1[12])?(\s*,\s*([0-9]|1[12])(-[0-9]|-1[12])?)?$/,
"alertText": "a single page number until 12 or an interval in them, or two of those separated by a comma"
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.