js input数字校验
<script>
//负数
window.checkfushuInt = function (obj) {
obj.value = obj.value.replace(/[^-\d.]/g, ""); //清除"-","数字"和"."以外的字符
obj.value = obj.value.replace(/^[.]/, ""); //禁止第一个字符为.
obj.value = obj.value.replace("-.", ""); //禁止前两个字符为-.
obj.value = obj.value.replace(/\-{2,}/g, "-"); //只保留第一个-, 清除多余的
obj.value = obj.value.replace("-", "$##$##$").replace(/\-/g, "").replace("$##$##$", "-");
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'); //只能输入两个小数
}
//正数
window.checkzhengshuInt = function (obj) {
obj.value = obj.value.replace(/[^\d.]/g, ""); //清除"数字"和"."以外的字符
obj.value = obj.value.replace(/^[.]/, ""); //禁止第一个字符为.
obj.value = obj.value.replace("-.", ""); //禁止前两个字符为-.
obj.value = obj.value.replace(/\-{2,}/g, "-"); //只保留第一个-, 清除多余的
obj.value = obj.value.replace("-", "$##$##$").replace(/\-/g, "").replace("$##$##$", "-");
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'); //只能输入两个小数
}
//整数
window.checkInt = function (obj) {
obj.value = obj.value.replace(/[^\d]/g, ""); //清除"-","数字"和"."以外的字符
obj.value = obj.value.replace(/^[0]/, ""); //禁止第一个字符为.
}
</script>
测试:
<input type="text" onkeyup="checkfushuInt(this)" name="username" placeholder="用户名"/>