使用正则表达式判断用户名格式
代码如下:
<form action="user.action?method=login" method="post" onsubmit="return testName()">
<label>用户名:</label><input name="name" id="nid">
<span id="nameAtt" class="att"></span><br>
<label>密 码:</label><input type="password" name="password"><br>
<label>验证码:</label><input type="text" name="code"><br>
<img src="user.action?method=getCode" id="img"><br>
<input type="submit" value="登录">
</form>
<script type="text/javascript">
function testName() {
// 通过DOM对象
var nameInput = document.getElementById("nid");
// 通过.value获取name输入框中的值
var name = nameInput.value;
// 通过正则表达式判断帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线)
var rag = /^[a-zA-Z][a-zA-Z0-9_]{4,15}$/;
if (!rag.test(name)) {
var sp = document.getElementById("nameAtt");
sp.innerHTML = "账户名格式错误";
sp.style.color = "red";
return false;
}
}
</script>
var sp = document.getElementById(“nameAtt”)
标签ID忘记加双引号,导致JS代码成了摆设,,不愧是我
————每日一BUG