目标效果:
- 如果用户名输入合法, 则后面提示信息为 : 用户名输入正确,并且颜色为绿色
- 如果用户名输入不合法, 则后面提示信息为: 用户名输入错误, 并且颜色为绿色
- 用户名正确的要求是:只能输入英文字母,数字,下划线,短横线。且在6-16位之间。(该正确用户名要求用正则表达式写:/^[a-zA-Z0-9_-]{6,16}$/)【注意{6,16}的6和16之间不能有空格】
e.g.1用户名输入正确时
e.g.2用户名输入正确错误时
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
span {
color: #aaa;
font-size: 14px;
}
.right {
color: green;
}
.wrong {
color: red;
}
</style>
</head>
<body>
<input type="text" class="uname"> <span>请输入用户名</span>
<script>
var reg = /^[a-zA-Z0-9_-]{6,16}$/;
// 只能输入英文字母,数字,下划线,短横线。且在6-16位之间。
// {6,16} 中间不要有空格
var uname = document.querySelector('.uname');
var span = document.querySelector('span');
uname.onblur = function () {
if (reg.test(this.value)) {
console.log('正确的');
span.className = 'right';
span.innerHTML = '用户名输入正确';
} else {
console.log('错误的');
span.className = 'wrong';
span.innerHTML = '用户名输入错误';
}
}
</script>
</body>
</html>