参考: https://www.cnblogs.com/En-summerGarden/p/10145295.html
//只能输入整数 function Integer(obj) { if (obj.value.length == 1) { obj.value = obj.value.replace(/[^1-9]/g, '') }
else { obj.value = obj.value.replace(/D/g, '') } } //输入正数,最多保留一位小数 function clearNoNum(obj) { obj.value = obj.value.replace(/[^d.]/g, '');//清除“数字”和“.”以外的字符 obj.value = obj.value.replace(/.{2,}/g, '.');//只保留第一个. 清除多余的 obj.value = obj.value.replace('.', '$#$'); obj.value = obj.value.replace(/./g, ''); obj.value = obj.value.replace('$#$', '.'); obj.value = obj.value.replace(/^(-)*(d+).(d).*$/, '$1$2.$3').replace(/^./g, '');//只能输入两个小数 且首位不能是 . if (obj.value.indexOf(".") < 0 && obj.value != "") {//以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的数字 obj.value = parseFloat(obj.value); } }
//输入数字(可为负数),最多保留一位小数
function negativeclearNoNum(obj) {
obj.value = obj.value.replace(/[^d.-]/g, ""); //清除"数字"和"."以外的字符
obj.value = obj.value.replace(/.{2,}/g, "."); //只保留第一个, 清除多余的
obj.value = obj.value.replace(/-{2,}/g, "-"); //只保留第一个, 清除多余的
obj.value = obj.value.replace(".", "$#$").replace(/./g, "").replace("$#$", ".");
obj.value = obj.value.replace(/^(-)*(d+).(d).*$/, '$1$2.$3'); //最多一位小数
if (obj.value.indexOf(".") < 0 && obj.value != "") {//以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的数字
if (obj.value != "-") {
obj.value = parseFloat(obj.value);
}
}
}