如何避免用户使用javascript为前两个字符输入数字(但其余所有字符必须仅为数字)
我在表单中有一个要求。我的表单有文本框字段“DEA许可证号”。文本框必须允许用户只输入前两个字符的字母,并且只在两个字符后输入数字。我希望使用javascript实现此功能。注意:-我不希望验证,但避免用户输入您尝试过使用正则表达式吗如何避免用户使用javascript为前两个字符输入数字(但其余所有字符必须仅为数字),javascript,asp.net,Javascript,Asp.net,我在表单中有一个要求。我的表单有文本框字段“DEA许可证号”。文本框必须允许用户只输入前两个字符的字母,并且只在两个字符后输入数字。我希望使用javascript实现此功能。注意:-我不希望验证,但避免用户输入您尝试过使用正则表达式吗 看看这篇文章,它有一个非常相似的目标:尝试使用一些蒙面文本框 例如: 您可以使用正则表达式轻松测试这一点: function isValid(str) { return /^[a-zA-Z]{2}\d+$/.test(str); } 我不太清楚您所说的
看看这篇文章,它有一个非常相似的目标:尝试使用一些蒙面文本框 例如:
您可以使用正则表达式轻松测试这一点:
function isValid(str) {
return /^[a-zA-Z]{2}\d+$/.test(str);
}
我不太清楚您所说的“我不希望验证,但避免用户输入”是什么意思。如果您的意思是不希望用户能够键入无效字符,理论上可以使用输入
事件处理程序:
var oldValue = "";
document.getElementById("test").addEventListener("input", function(e) {
var value = e.target.value;
if ((value.length <= 2 && /^[a-zA-Z]*$/.test(value)) || value.length > 2 && /^[a-zA-Z]{2}\d+$/.test(value)) oldValue = value
else e.target.value = oldValue;
})
var oldValue=”“;
document.getElementById(“测试”).addEventListener(“输入”,函数(e){
var值=e.目标值;
如果((value.length 2&&/^[a-zA-Z]{2}\d+$/.test(value))oldValue=value
否则e.target.value=旧值;
})
但是,在提交时,您仍然需要对其进行验证,因为用户可能输入了不完整的值。这不符合好问题的规则。请添加一些代码并查看。