zoukankan      html  css  js  c++  java
  • 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"));
     
     


  • 相关阅读:
    C#中结构与类的区别
    LINQ中的聚合操作以及常用方法
    慎用const关键字
    .NET Framework想要实现的功能
    System.Object的一些方法
    你真的了解.NET中的String吗?
    C#学习要点一
    2012年 新的开始!
    java web服务器中的 request和response
    java Thread编程(二)sleep的使用
  • 原文地址:https://www.cnblogs.com/chenchangwen/p/3453276.html
Copyright © 2011-2022 走看看