限制只能输入数字,包含范围(大于一个负数,小于一个正数),小数点,和负号,只能输入一个小数点

 
function filterVal( e, min, max){
let length = e. target. value. length;
let f = e. target. value. slice( 0, 1);
let point = e. target. value. slice( length- 1, length);
let matchLength = e. target. value. match( / \. / g);
if( point == "." && matchLength && matchLength. length< 3){
if( matchLength. length == 2){
e. target. value= e. target. value. slice( 0, length- 1);
}
if( e. target. value == "-."){
e. target. value = "-0.";
}
} else{
e. target. value = e. target. value. replace( / [^ \d ] $ / g, "");
if( e. target. value != 0 && point != "0" && e. target. value != "-" && e. target. value != "."){
e. target. value = e. target. value - 0;
}
}
let resualt = f == "-" ? f + e. target. value. slice( 1) : e. target. value;
function limitLng( value) {
let f = value. slice( 0, 1);
if ( f == "-") {
if ( value < min) {
if ( value. slice( 0, 4) >= min) {
return value. slice( 0, 4);
} else {
return value. slice( 0, 3);
}
}
} else {
if ( value > max) {
if ( value. slice( 0, 3) <= max) {
return value. slice( 0, 3);
} else {
return value. slice( 0, 2);
}
}
}
return value;
}
e. target. value = limitLng( resualt);
}

使用说明:e是input元素原生event,min<0;max>0; 用于输入框只能输入数字,且在min--max之间,支持负号,小数点

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值