我把三张图截到一起 实际是一个表单 根据返回的结果是否符号条件 正确或者错误则改变span的类名
/^[a-zA-Z0-9_-]{6,12}$/;
这个意思是 可以重复输入大小写字母 0-9数字之间 的6-12位字符 下划线 横线 其他字符出现则报错
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>正则</title>
<style>
span {
color: #ccc;
}
input {
outline: none;
}
.right {
color: green;
}
.wrong {
color: red;
}
</style>
</head>
<body>
<input type="text" class="uname">
<span>请输入用户名</span>
</body>
<script>
var uname = document.querySelector('.uname');
var span = document.querySelector('span')
var reg = /^[a-zA-Z0-9_-]{6,12}$/;
uname.onblur = function() {
//reg.test() 里面放上值 可以返回true还是fasle
if (reg.test(uname.value)) {
console.log('正确');
span.className = 'right'
span.innerHTML = '用户名格式正确'
} else {
console.log('错误');
span.className = 'wrong'
span.innerHTML = '用户名格式错误'
}
}
</script>
</html>