• JavaScript注册页面的前端验证(1+X Web前端开发初级 例题)


    文章目录

    📄题目要求

    🧩说明

    🧩效果图

    🧩补充:题目文件结构

    💻HTML代码

    💻CSS代码

    💻JavaScript代码

    🎯实现效果

    1️⃣测试一

    2️⃣测试二

    📰完整答案


    📄题目要求

    • 阅读下列说明、效果图和代码,进行静态网页开发,填写(1)至(10)代码。

    🧩说明

    • 现接到某电商网站注册、登录页面开发的项目,在注册页面需要做前端验证。具体要求:用户名长度和格式验证、邮箱格式验证、密码长度和格式验证、密码与重复密码一致性验证。
    • 项目名称为verify,包含首页index.html、css文件夹、js文件夹,其中,css文件夹包含style.css文件,js文件夹包含index.js文件。

    • 根据注释,补全代码,在(1)至(10)处填入正确的内容。

    🧩效果图

    🧩补充:题目文件结构

    💻HTML代码

    1. html>
    2. <html>
    3. <head>
    4. <title>第三题title>
    5. <meta charset="utf-8">
    6. <link rel="stylesheet" type="text/css" href="css/style.css">
    7. head>
    8. <body>
    9. <div class="box" id="box">
    10. <h2>注册h2>
    11. <form action="" method="get">
    12. <ul>
    13. <li>
    14. <label><span>*span>用户名:label>
    15. <input type="text" name="username" placeholder="只能输入6-20个字母、数字、下划线" id="username">
    16. li>
    17. <li>
    18. <label><span>*span>电子邮箱:label>
    19. <input type="text" name="email" placeholder="输入正确的电子邮箱地址" id="email">
    20. li>
    21. <li>
    22. <label><span>*span>密码:label>
    23. <input type="password" name="pwd" placeholder="由字母开头,包含字母、数字、下划线,6-16位" id="pwd">
    24. li>
    25. <li>
    26. <label><span>*span>确认密码:label>
    27. <input type="password" name="pwdOk" placeholder="确认密码必须与密码一致" id="pwdOK">
    28. li>
    29. ul>
    30. <button name="submit">提交button>
    31. form>
    32. div>
    33. <script src="js/index.js">script>
    34. body>
    35. html>

    💻CSS代码

    1. body,h1,h2,h3,h4,h5,h6,p,ul,ol,dl,dd{
    2. margin: 0;
    3. padding: 0;
    4. }
    5. ul{
    6. list-style: none;
    7. }
    8. input{
    9. border:0;
    10. }
    11. .clear:after{
    12. content: "";
    13. display: block;
    14. clear: both;
    15. }
    16. .box{
    17. width: 500px;
    18. margin:30px auto;
    19. padding:30px 40px;
    20. border:1px solid #ddd;
    21. box-shadow: 0 0 10px #bbb;
    22. box-sizing: border-box;
    23. }
    24. .box h2{
    25. text-align: center;
    26. color:#666;
    27. font-size: 22px;
    28. line-height: 40px;
    29. }
    30. .box form{
    31. padding:15px 0;
    32. }
    33. .box form ul li{
    34. display: flex;
    35. height: 40px;
    36. line-height: 40px;
    37. margin-bottom: 15px;
    38. }
    39. .box form ul li input{
    40. border:1px solid #ddd;
    41. height: 38px;
    42. padding:0 10px;
    43. line-height: 38px;
    44. flex:1;
    45. box-sizing: border-box;
    46. }
    47. .box form ul li label{
    48. display: block;
    49. width: 120px;
    50. }
    51. .box form ul li label span{
    52. color:red;
    53. padding-right:10px;
    54. }
    55. .box form button{
    56. width: 100%;
    57. border:none;
    58. height: 40px;
    59. background-color: green;
    60. color:#fff;
    61. }

    💻JavaScript代码

    本题考点都在JavaScript的内容

    1. function validate_strLenght(str) {
    2. var regExp = /^(\w){6,20}$/;
    3. return regExp.test(str);
    4. }
    5. function validate_email(str) {
    6. var regExp = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
    7. return regExp.test(str);
    8. }
    9. function validate_pwd(str) {
    10. var regExp = /^[a-zA-Z]\w{5,15}/;
    11. return regExp.test(str);
    12. }
    13. // (1)根据表单控件user的id填写
    14. // var username = document.getElementById(" (1) ");
    15. var username = document.getElementById("username");
    16. //(2)通过id获取元素
    17. // var email = document. (2) ("email");
    18. var email = document.getElementById("email");
    19. //(3)根据表单控件pwd的id填写
    20. // var pwd = document.getElementById(" (3) ");
    21. var pwd = document.getElementById("pwd");
    22. //(4)通过id获取元素
    23. // var pwdOK = document. (4) ("pwdOK");
    24. var pwdOK = document.getElementById("pwdOK");
    25. //(5)通过标签名获取元素
    26. // var form = document. (5) ("form")[0];
    27. var form = document.getElementsByTagName("form")[0];
    28. //(6)表单提交
    29. // form. (6) = function () {
    30. form.onsubmit = function () {
    31. //(7)(8)使用自定义方法验证用户名、验证邮箱
    32. // if (validate_strLenght( (7) ) && (8) (email.value) && validate_pwd(pwd.value) && checkOk()) {
    33. if (validate_strLenght(username.value) && validate_email(email.value) && validate_pwd(pwd.value) && checkOk()) {
    34. console.log(username.value)
    35. console.log(email.value)
    36. console.log(pwd.value)
    37. return false;
    38. } else {
    39. //(9)控制台输出
    40. // (9) .log("验证失败")
    41. console.log("验证失败")
    42. return false;
    43. }
    44. }
    45. // 检查用户名
    46. username.onblur = function () {
    47. if (validate_strLenght(username.value)) {
    48. console.log("用户名符合要求")
    49. } else {
    50. console.log("用户名不符合要求")
    51. }
    52. }
    53. //检查meil
    54. email.onblur = function () {
    55. if (validate_email(email.value)) {
    56. console.log("邮箱格式符合要求")
    57. } else {
    58. console.log("邮箱格式不符合要求")
    59. }
    60. }
    61. // (10)密码框失去焦点的时候
    62. // pwd. (10) = function () {
    63. pwd.onblur = function () {
    64. if (validate_pwd(pwd.value)) {
    65. console.log("密码符合要求")
    66. } else {
    67. console.log("密码不符合要求")
    68. }
    69. }
    70. function checkOk() {
    71. if (pwd.value == pwdOK.value) {
    72. console.log("密码与重复密码一致")
    73. return true
    74. } else {
    75. console.log("密码与重复密码不一致")
    76. return false
    77. }
    78. }
    79. pwdOK.onkeyup = checkOk

    🎯实现效果

    输入要求如下。

    1️⃣测试一

    首先输入符合要求的信息。

    2️⃣测试二

    输入不符合要求的信息。

    📰完整答案

    试题三(20分)
    【问题】(20分)
    (1)username
    (2)getElementById
    (3)pwd
    (4)getElementById
    (5)getElementsByTagName
    (6)onsubmit
    (7)username.value
    (8)validate_email
    (9)console
    (10)onblur
    (每空2分,共20分)


    🎯点赞收藏,防止迷路🔥 


  • 相关阅读:
    Qt5开发从入门到精通——第四篇十三节(程序启动画面 )
    try-except 搭配装饰器使用
    创客匠人助力职教机构快速实现数字化经营
    P1972 [SDOI2009] HH的项链
    1.摄像机几何
    idea中maven导入依赖不进行提示的问题(已经解决)
    【从小白到大白01】c++类和对象
    【机器学习12】集成学习
    Rest和Http什么关系?
    .net+bootstrap写的一个还不错的音乐网站
  • 原文地址:https://blog.csdn.net/weixin_53231455/article/details/127739755