有时需要限制文本框输入内容的类型,本节分享下正则表达式限制文本框只能输入数字、小数点、英文字母、汉字等代码。
例如,输入大于0的正整数
1、文本框只能输入数字代码(小数点也不能输入)
2、只能输入数字,能输小数点
3、数字和小数点方法二
4、封装成单独的函数:
只需在调用,传入this对象即可
5、小数点后只能有最多两位(数字、中文都可输入),不能输入字母和运算符号
6、小数点后只能有最多两位(数字、字母,中文都可输入),可以输入运算符号
限制文本框只能输入正数,负数,小数
onkeyup="value=value.replace(/[^\-?\d.]/g,'')"
限制文本框只能输入正数,小数
onkeyup="value=value.replace(/[^\d.]/g,'')"
//只能输入数字,最多两位小数。 首位不能输入0;
$("#inp2").keydown(function(e) {
let keyCode = e.keyCode;
if((keyCode >= 48 && keyCode <= 57 || keyCode === 190 || keyCode === 8) && !(!$("#inp2").val() && e.keyCode === 48)) {
let num = ($("#inp2").val() + "" + e.key);
if(/^[0-9]+(.[0-9]{0,2})?$/.test(num)) {
} else {
if(e.keyCode === 8) {
return;
}
e.preventDefault();
}
} else {
e.preventDefault();
}
});
//只能输入数字,最多两位小数。 首位可以输入0;
$("#inp1").keydown(function(e) {
// 0 keyCode 48 9 keyCode 57 . keyCode 190 删除 keyCode 8
let keyCode = e.keyCode;
if(keyCode >= 48 && keyCode <= 57 || keyCode === 190 || keyCode === 8) {
let num = ($("#inp1").val() + "" + e.key);
if(/^[0-9]+(.[0-9]{0,2})?$/.test(num)) {
} else {
if(e.keyCode === 8) {
return;
}
e.preventDefault();
}
} else {
e.preventDefault();
}
});
jquery + 正则表达式