js验证整数加保留小数点的简单实例
(编辑:jimmy 日期: 2026/1/20 浏览:2)
复制代码 代码如下:
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));
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?