<input id='inputCellPrice' type='number' οnkeyup='clearNoNum(this)' name='inputCell' style ='width: 80px' lay-verify='number' step='0.01' min='0' value=''>" 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); } }
最终效果: 无法输入数字之外的内容, 小数点两位之后的数字会自动清空
js是百度的,从哪里拷的已经忘了