js怎么限定文本框输入数字而且是小数点前限制0-99,小数点后两位数
如题,我知道是通过正则表达式去写,可是今天在百度上度了一上午,也没有一个是对的……求解……
大咪
浏览 3510回答 1
1回答
-
蜂之谷
<input type="text" name="je" onkeyup="clearNoNum(this)" /><script type="text/javascript">
function clearNoNum(obj){
obj.value = obj.value.replace(/[^\d.]/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');//只能输入两个小数
if(obj.value.indexOf(".")< 0 && obj.value !=""){
//以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02
obj.value= parseFloat(obj.value);
}
if(obj.value>100){
obj.value = 99.99;
}
}
</script>
打开App,查看更多内容