在完善项目过程中,有时候输入的数字只需保留后两位小数,如金额等,代码如下:
HTML:
<div>
<h3>只保留小数点后两位</h3>
<input type="text" onkeyup="chearNum(this)">
</div>
js:
<script>
function chearNum(obj){
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'); //只能输入两个小数
console.log(obj.value)
}
</script>