老师请检查一下代码有没有问题
来源:4-8 编程练习
Jyuloeng
2019-07-11 22:53:12
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> #wrap{ margin: 100px auto; width: 800px; height: 650px; background-color: #f5f5f5; border-top-left-radius: 10px; border-top-right-radius: 10px; border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; } .title{ font-size: 23px; background-color: lightblue; text-indent: 20px; color: white; line-height: 40px; height: 40px; border-top-left-radius: 10px; border-top-right-radius: 10px; } .userInput{ margin: 100px auto; padding-left: 220px; font-size: 15px; } label{ cursor: pointer; display: inline-block; padding: 3px 6px; text-align: right; width: 90px; } input{ width: 170px; height: 18px; line-height: 18px; border: 1px solid #e5e5e5; font-family: '微软雅黑'; } select{ width: 172px; height: 22px; line-height: 23px; border: 1px solid #e5e5e5; font-family: '微软雅黑'; } .userInput .tips{ color: red; padding-left: 7px; font-size: 12px; } #submit{ background-color: #2374b9; color: white; font-size: 17px; line-height: 40px; height: 42px; width: 77px; border: 1px solid #eee; border-radius: 8px; margin: 27px 145px; } </style> </head> <body> <form id="wrap"> <h1 class="title">用户注册</h1> <div class="userInput"> <p> <label for="userPassName">用户名:</label> <input type="text" id="userPassName"> <span class="tips"></span> </p> <p> <label for="userPassWord">登陆密码:</label> <input type="password" id="userPassWord"> <span class="tips"></span> </p> <p> <label for="affPassWord">确认密码:</label> <input type="password" id="affPassWord"> <span class="tips"></span> </p> <p> <label for="userName">姓名:</label> <input type="text" id="userName"> <span class="tips"></span> </p> <p> <label for="userSex">性别:</label> <select id="userSex"> <option>男</option> <option>女</option> </select> </p> <p> <label for="userID">身份证号码:</label> <input type="text" id="userID"> <span class="tips"></span> </p> <p> <label for="userEmail">邮箱:</label> <input type="text" id="userEmail"> <span class="tips"></span> </p> <p> <label for="userPhoneNum">手机号码:</label> <input type="text" id="userPhoneNum"> <span class="tips"></span> </p> <p> <input type="button" value="提交" id="submit"> </p> </div> </form> <script type="text/javascript"> //获取父元素 var wrapElem = document.getElementById('wrap'); // 获取子元素 var formElem = { userPassName: wrapElem.querySelector('#userPassName'), userPassWord: wrapElem.querySelector('#userPassWord'), affPassWord: wrapElem.querySelector('#affPassWord'), userName: wrapElem.querySelector('#userName'), userSex: wrapElem.querySelector('#userSex'), userID: wrapElem.querySelector('#userID'), userEmail: wrapElem.querySelector('#userEmail'), userPhoneNum: wrapElem.querySelector('#userPhoneNum'), submit: wrapElem.querySelector('#submit'), tips: wrapElem.querySelectorAll('.tips') }; // 创建相应正则 var pattern = { userPassName: /^[a-z]\w{5,19}$/i, //验证用户名 userPassWord: /^\S{6,18}$/, //验证用户密码 userName: /^[\u4e00-\u9fa5]{2,4}$/, //验证姓名 userID: /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/, //验证身份证号 userEmail: /^\w+@\w+.[a-zA-Z]{2,3}$/, userPhoneNum: /^(?:13[0-9]|147|15[012356789]|18[0256789])\d{8}$/ }; //创建判断方法 var test = { userPassName: function(){ if(!pattern.userPassName.test(formElem.userPassName.value)){ formElem.tips[0].innerHTML = '需6-20位字母、数字或“_”,字母开头'; return false; } else{ formElem.tips[0].innerHTML = 'OK'; return true; } }, userPassWord: function(){ if(!pattern.userPassWord.test(formElem.userPassWord.value)){ formElem.tips[1].innerHTML = '需6-18位,包括数字字母或符号,中间不能有空格'; return false; } else{ formElem.tips[1].innerHTML = 'OK'; return true; } }, affPassWord: function(){ if(formElem.userPassWord.value != formElem.affPassWord.value){ formElem.tips[2].innerHTML = '两次输入的密码不一致,请重新输入'; return false; } else if(formElem.userPassWord.value == ''){ formElem.tips[2].innerHTML = '请输入登录密码'; return false; } else{ formElem.tips[2].innerHTML = 'OK'; return true; } }, userName: function(){ if(!pattern.userName.test(formElem.userName.value)){ formElem.tips[3].innerHTML = '需6两位到四位的中文汉字'; return false; } else{ formElem.tips[3].innerHTML = 'OK'; return true; } }, userID: function(){ if(!pattern.userID.test(formElem.userID.value)){ formElem.tips[4].innerHTML = '请输入正确的身份证号码'; return false; } else{ formElem.tips[4].innerHTML = 'OK'; return true; } }, userEmail: function(){ if(!pattern.userEmail.test(formElem.userEmail.value)){ formElem.tips[5].innerHTML = '请输入正确的邮箱地址'; return false; } else{ formElem.tips[5].innerHTML = 'OK'; return true; } }, userPhoneNum: function(){ if(!pattern.userPhoneNum.test(formElem.userPhoneNum.value)){ formElem.tips[6].innerHTML = '请输入正确的手机号码'; return false; } else{ formElem.tips[6].innerHTML = 'OK'; return true; } } }; //遍历执行onblur for(var i in formElem){ formElem[i].onblur = test[i]; } //判断是否能提交 formElem.submit.onclick = function(){ var judge = function(){ for(var i in test){ if(test[i]() != true){ test[i](); return false; } } return true }; if(judge() == true){ alert('提交成功!'); }else{ alert('输入信息有误!'); } } </script> </body> </html>
1回答
你好同学,代码实现的正确,非常棒,老师要给你一个表扬哦。
希望同学继续加油,祝学习愉快!
相似问题