我有一个HTML表单,其中一个问题(文本字段)需要检查:
我真的在努力使用JavaScript验证来实现这一点。我是JavaScript的新手,如果有人能指出我正确的方向,我会很高兴。非常感谢
答案 0 :(得分:0)
您可以查看此正则表达式:
/^[\d]{6}[ABCDE]{1}$/
var re = /^[\d]{6}[ABCDE]{1}$/;
var str = '123456A';
if (str.match(re)){
alert('match')
}

答案 1 :(得分:0)
尝试RegEx:/^\d{6}[A-E]$/
:
此处,^
和$
是表示表达式开始和结束的锚点。 \d
代表数字0
至9
,{}
指定长度,[A-E]
用于指定从A
到E
的范围。
var check = function(tb) {
tb.className = '';
if (/^\d{6}[A-E]$/.test(tb.value)) return;
tb.className = 'error';
alert('Invalid input !');
};
.error {
border-color: red;
}
<input type="text" onblur="check(this);" />
答案 2 :(得分:0)
你可以这样做。
<script>
var inp = document.getElementById('myinput');
var chars = document.getElementById('chars');
inp.onkeyup = function() {
var value= inp.value.charAt(inp.value.length - 1);
var n = 'ABCDE'.indexOf(value);
if(n<0)
{
alert("This is valid data");
}
}
</script>
<input id="myinput"><span id="chars">0</span>
答案 3 :(得分:0)
使用RegExp检查格式+检查长度:
它会提醒true
或false
var str = "123456A";
alert(str.match(/[0-9]{6}[ABCDE]{1}/) && str.length === 7);