您的位置:首页 > Web前端 > JavaScript

js正则限制 input 只能输入小数、整数

2018-01-12 17:28 561 查看
只能输入小数、整数:

function num(obj){
if(obj.value=='0.00'){
obj.value = '';
}
obj.value = obj.value.replace(/[^\d.]/g,"");
obj.value = obj.value.replace(/^\./g,"");
obj.value = obj.value.replace(/\.{2,}/g,".");
obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3');

}

<input class="control" id="" name="" style="width: 100px;" onkeyup="num(this)"/>

只能输入整数:

<input class="control" id="" name="" style="width: 100px;"
onkeyup="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}"/>

第一: 限制只能是整数


[js] view
plain copy

<input type = "text" name= "number" id = 'number' onkeyup= "if(! /^d+$/.test(this.value)){alert('只能整数');this.value='';}" />  

如果不是整数就直接alert

第二: 限制是两位的小数

[js] view
plain copy

<input type = "text" name= "price" id = 'price' onkeyup= "if( ! /^d*(?:.d{0,2})?$/.test(this.value)){alert('只能输入数字,小数点后只能保留两位');this.value='';}" />  

通过 正则表达式判断,不满足 执行alert。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: