首页 > 其他 > 详细

数据类型输入限制

时间:2021-04-25 23:17:10      阅读:15      评论:0      收藏:0      [点我收藏+]

 

考验正则的时候到了!

数字型

1,整数

//1,保存第一个字符
let first_char = obj.value.charAt(0);

//2,只保留数字
obj.value = obj.value.replace(‘/[^\d]/g‘,‘‘);

//3,如果第一位是负号-,则可以添加
if(first_char ==‘-‘){
    obj.value = first_char + obj.value;
}   

2,非负整数

//1,保存第一个字符
let first_char = obj.value.charAt(0);

//2,只保留数字
obj.value = obj.value.replace(‘/[^\d]/g‘,‘‘);

//3,如果>0,去掉开头的0
if(obj.value > 0){
    obj.value = obj.value.replace(‘/^0/g‘,‘‘);
}

3,正整数

//1,保存第一个字符
let first_char = obj.value.charAt(0);

//2,只保留数字
obj.value = obj.value.replace(‘/[^\d]/g‘,‘‘);

//3,去掉开头的0
obj.value = obj.value.replace(‘/^0/g‘,‘‘);

4,浮点型(包含整数)

//1,保存第一个字符
let first_char = obj.value.charAt(0);

//2,只保留数字和点
obj.value = obj.value.replace(‘/[^\d\.]/g‘,‘‘);

//3,第一个不能是点
obj.value = obj.value.replace(‘/^\./g‘,‘‘);

//4,连续的点只保留一个
obj.value = obj.value.replace(‘/\.{2,}/g‘,‘.‘);

//5,保证点只能出现1次
obj.value = obj.value.replace(‘.‘,‘$#$‘).replace(/\./g,‘‘).replace(‘$#$‘,‘.‘);

//6,如果第一位是负号-,则可以添加
if(first_char ==‘-‘){
    obj.value = first_char + obj.value;
}       

5,限制大小

//在前面1-4的基础上,继续判断
max = 100.55;
min = -100.55if(obj.value>max){
obj.value=max;
}
if(obj.value<min){
obj.value = min;
}

6,限制小数点位数

//在4的基础上,比如3位小数
let n =3;
let value = parseFloat(obj.value);
if(isNaN(value)){
  return;            
}
let times = Math.pow(10,3);
obj.value = Math.round(obj.value*times) /times;

 

字符型

1,限制字符长度

//10位长度
let len =10;
obj.value = obj.value.substring(0,len);

 

数据类型输入限制

原文:https://www.cnblogs.com/tkzc2013/p/14701403.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!