南强小屋 Design By 杰米
复制代码 代码如下:
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));
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));
标签:
js,整数,小数点
南强小屋 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
南强小屋 Design By 杰米
暂无js验证整数加保留小数点的简单实例的评论...
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。