js验证整数加保留小数点

 1 function validateNum(obj) {
 2     //正整数(此处用了缓存)
 3     var number = obj.data('validate').number;
 4     //小数点(此处用了缓存)
 5     var decimal = obj.data('validate').decimal;
 6     //动态基本验证正则
 7     eval("var reg = /^[0-9]{0," + number + "}([.]?[0-9]{0," + decimal + "})$" + "/g;");
 8     var value = obj.val();
 9     var maxnumlen = number + decimal + 1; //最大长度 + 1(小数点)
10     if (!reg.test(obj.val())) return false;
11     //最大长度等于当前值的长度并且值没有"."
12     if (maxnumlen == value.length && value.indexOf('.') <= 0) {
13         return false;
14     }
15     //尝试得到"."的索引
16     var valueindexof = value.indexOf('.');
17     if (valueindexof > 0) {
18         //如果"."索引后一位是空那么肯定是返回false
19         if (value.charAt(valueindexof + 1) == "") {
20             return false;
21         }
22     }
23     //分割值就很容易判断出前后内容
24     var valuesplit = value.split('.');
25     //如果值的长度大于定义的正整数长度 
26     if (value.length > number) {
27         if (valuesplit.length == 1) {
28             return false;
29         }
30         //最大长度-所定义长度 大于 最大长度 即超长 ,false.
31         if (maxnumlen - number >= maxnumlen) {
32             return false;
33         }
34     }
35     return true;
36 }

给元素缓存一个validate对象后,调用即可。
定义:
$("#example").data("validate", { number: 2, decimal: 2 });
调用:
validateNum($("#example"));
 
 


 

转载于:https://www.cnblogs.com/chenchangwen/p/3453276.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值