js验证整数加保留小数点的简单实例


Posted in Javascript onDecember 02, 2013
function validateNum(obj) {
    //正整数(此处用了缓存)
    var number = obj.data(validate).number;
    //小数点(此处用了缓存)
    var decimal = obj.data(validate).decimal;
    //动态基本验证正则
    eval("var reg = /^[0-9]{0," + number + "}([.]?[0-9]{0," + decimal + "})$" + "/g;");
    var value = obj.val();
    var maxnumlen = number + decimal + 1; //最大长度 + 1(小数点)
    if (!reg.test(obj.val())) return false;
    //最大长度等于当前值的长度并且值没有"."
    if (maxnumlen == value.length && value.indexOf('.') <= 0) {
        return false;
    }
    //尝试得到"."的索引
    var valueindexof = value.indexOf('.');
    if (valueindexof > 0) {
        //如果"."索引后一位是空那么肯定是返回false
        if (value.charAt(valueindexof + 1) == "") {
            return false;
        }
    }
    //分割值就很容易判断出前后内容
    var valuesplit = value.split('.');
    //如果值的长度大于定义的正整数长度 
    if (value.length > number) {
        if (valuesplit.length == 1) {
            return false;
        }
        //最大长度-所定义长度 大于 最大长度 即超长 ,false.
        if (maxnumlen - number >= maxnumlen) {
            return false;
        }
    }
    return true;
}

给元素缓存一个validate对象后,调用即可。
定义:
$("#example").data("validate", { number: 2, decimal: 2 });
调用:
validateNum($("#example));
Javascript 相关文章推荐
JavaScript 字符串乘法
Aug 20 Javascript
Jquery Ajax学习实例 向页面发出请求,返回XML格式数据
Mar 14 Javascript
JavaScript词法作用域与调用对象深入理解
Nov 29 Javascript
jQuery实现鼠标经过提示信息的地图热点效果
Apr 26 Javascript
js实现不重复导入的方法
Mar 02 Javascript
jquery 获取select数组与name数组长度的实现代码
Jun 20 Javascript
js判断是否是手机页面
Mar 17 Javascript
对angularJs中controller控制器scope父子集作用域的实例讲解
Oct 08 Javascript
vue+Element-ui实现分页效果实例代码详解
Dec 10 Javascript
js实现图片推拉门效果代码实例
May 18 Javascript
jQuery Datatables 动态列+跨列合并实现代码
Jan 30 jQuery
VSCode 配置uni-app的方法
Jul 11 Javascript
ExtJs中gridpanel分组后组名排序实例代码
Dec 02 #Javascript
javascript操作html控件实例(javascript添加html)
Dec 02 #Javascript
解析Javascript中大括号“{}”的多义性
Dec 02 #Javascript
解析JavaScript中点号“.”的多义性
Dec 02 #Javascript
解析JavaScript中的不可见数据类型
Dec 02 #Javascript
Jquery使用Firefox FireBug插件调试Ajax步骤讲解
Dec 02 #Javascript
jquery遍历之parent()和parents()的区别及parentsUntil()方法详解
Dec 02 #Javascript
You might like
PHP写的获取各搜索蜘蛛爬行记录代码
2012/08/21 PHP
PHP模板引擎Smarty的缓存使用总结
2014/04/24 PHP
PHP间隔一段时间执行代码的方法
2014/12/02 PHP
利用PHPStorm如何开发Laravel应用详解
2017/08/30 PHP
php实现微信发红包功能
2018/07/13 PHP
PHP切割汉字的常用方法实例总结
2019/04/27 PHP
PHP针对redis常用操作实例详解
2019/08/17 PHP
发一个自己用JS写的实用看图工具实现代码
2008/07/26 Javascript
Extjs列表详细信息窗口新建后自动加载解决方法
2010/04/02 Javascript
JS遮罩层效果 兼容ie firefox jQuery遮罩层
2010/07/26 Javascript
js replace正则表达式应用案例讲解
2013/01/17 Javascript
Javascript写入txt和读取txt文件示例
2014/02/12 Javascript
js实现内容显示并使用json传输数据
2016/03/16 Javascript
JSON字符串和对象相互转换实例分析
2016/06/16 Javascript
JavaScript SHA-256加密算法详细代码
2016/10/06 Javascript
AngularJS的依赖注入实例分析(使用module和injector)
2017/01/19 Javascript
一篇看懂vuejs的状态管理神器 vuex状态管理模式
2017/04/20 Javascript
微信 jssdk 签名错误invalid signature的解决方法
2019/01/14 Javascript
JavaScript私有变量实例详解
2019/01/24 Javascript
通过npm或yarn自动生成vue组件的方法示例
2019/02/12 Javascript
JavaScript中的几种继承方法示例
2020/12/06 Javascript
python数组过滤实现方法
2015/07/27 Python
python反编译学习之字节码详解
2019/05/19 Python
Python hashlib加密模块常用方法解析
2019/12/18 Python
Tensorflow tensor 数学运算和逻辑运算方式
2020/06/30 Python
HTML5 3D书本翻页动画的实现示例
2019/08/28 HTML / CSS
The North Face北面英国官网:美国著名户外品牌
2017/12/13 全球购物
Merchant 1948澳大利亚:新西兰领先的鞋类和靴子供应商
2018/03/24 全球购物
岗位职责风险点
2014/03/12 职场文书
广告创意求职信
2014/03/17 职场文书
2015元旦晚会主持人开场白+结束语
2014/12/14 职场文书
向女朋友道歉的话
2015/01/20 职场文书
感谢信的格式
2015/01/21 职场文书
会计工作自我鉴定范文
2019/06/21 职场文书
nginx处理http请求实现过程解析
2021/03/31 Servers
mysql事务对效率的影响分析总结
2021/10/24 MySQL