Bootstrap笔记——注册页面实现

1.思路

(1)注册页面风格与登录页面相同

(2)注册界面与登录界面放置在一个html文件中,使用jqeruy进行切换

2.在登录界面的基础上进行修改

https://www.cnblogs.com/YorkZhangYang/p/12538576.html

3.jQuery中tab标签切换例子

https://www.cnblogs.com/YorkZhangYang/p/12674859.html

4.根据以上第3点的例子,对登录页面进行修改

(1)页面结构

 (2)复制一个登录的form修改为注册,添加几个文本框

(3)修改CSS样式

(4)添加jQuery样式切换代码

5.代码如下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>注册登录界面
    </title>
     <!-- Bootstrap -->
     <link href="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/css/bootstrap.min.css" rel="stylesheet">
     <script src="js/jquery-3.4.1.js"></script>
<style>

    .bg{
        height: 600px;
        background-image:url(images/bg.jpg);
        background-size:cover;
       
    }



    .form{
       background: rgba(240,240,240,0.2);
       margin-top: 110px;
    margin-left: 37%;
     378px;
}
 
    
    
   .footer{
    height: 60px;
    padding-top:50px; 
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    clear: both;
   }
   
   .title{
     height: 40px;
     line-height: 40px;
     margin-bottom: 10px;
     background-color:transparent;
     
   }

   .row.title span{
     font-size: 16px;
     color: #494949;
     font-weight: bolder;
     /* 转换为并排的块 */
     display:inline-block;
     text-align: center;
     /* 左右填充满 */
     /* padding: 0 68px */
      49%;
     
   }
   

   span.tab_active{
      color: white!important; 
      background-color:#52ad61;
      border-bottom: 2px solid #fff;
   }

 
   .formcontent
   {
    padding: 20px 10px;
   }
 
</style>
    </head>
<body>
    <div class="page-header">
        <h1>XXXX信息系统登录注册界面</h1>
   </div>
      <div class="container-fluid">
       
        <div class="row bg">

          <div class="col-md-4 form">
            <div class="row title">
             <span class="tab_active">登&nbsp;&nbsp;&nbsp;&nbsp;录</span>
             <span style="float: right;">注&nbsp;&nbsp;&nbsp;&nbsp;册</span>
           </div>
            <div class="formcontent">
              <!-- 登录框 -->
            <form class="form-horizontal" id="loginForm" action="adminindex.html">
                <div class="form-group">
                  <label for="username" class="col-sm-4 control-label">用户名</label>
                  <div class="col-sm-8">
                    <input type="text" class="form-control" id="username" placeholder="请输入用户名" onblur="validateusername();">
                  </div>
                </div>
                <div class="form-group">
                  <label for="password" class="col-sm-4 control-label">密码</label>
                  <div class="col-sm-8">
                    <input type="password" class="form-control" id="password" placeholder="请输入密码">
                  </div>
                </div>
                <div class="form-group">
                    <label for="validateCode" class="col-sm-4 control-label">验证码</label>
                    <div class="col-sm-4">
                      <input type="text" class="form-control" id="validateCode" placeholder="请输入验证码">
                    </div>
                    <div class="col-sm-4">
                        <img src="images/yzm.jpg" alt="" width="75px" height="35px">
                      </div>
                  </div>
                <div class="form-group">
                  <div class="col-sm-offset-2 col-sm-10">
                    <div class="checkbox">
                      <label>
                        <input type="checkbox" name="remember">记住我
                      </label>
                    </div>
                  </div>
                </div>
                <div class="form-group">
                  <div class="col-sm-offset-2 col-sm-10">
                    <button type="button" id="submitBtn" class="btn btn-success" style=" 50%;" >登录</button>
                  </div>
                </div>
              </form>
              <!-- 注册框 -->
              <form class="form-horizontal" id="registerForm" action="" style="display: none;">
                <div class="form-group">
                  <label for="rusername" class="col-sm-4 control-label">用户名</label>
                  <div class="col-sm-8">
                    <input type="text" class="form-control" id="rusername" placeholder="请输入用户名" onblur="validateusername();">
                  </div>
                </div>
                <div class="form-group">
                  <label for="rpassword" class="col-sm-4 control-label">密码</label>
                  <div class="col-sm-8">
                    <input type="password" class="form-control" id="rpassword" placeholder="请输入密码">
                  </div>
                </div>
                <div class="form-group">
                  <label for="rrpassword" class="col-sm-4 control-label">确认密码</label>
                  <div class="col-sm-8">
                    <input type="password" class="form-control" id="rrpassword" placeholder="请输入确认密码">
                  </div>
                </div>
                <div class="form-group">
                  <label for="remail" class="col-sm-4 control-label">邮箱</label>
                  <div class="col-sm-8">
                    <input type="text" class="form-control" id="remail" placeholder="请输入邮箱">
                  </div>
                </div>    
                <div class="form-group">
                  <label for="rtel" class="col-sm-4 control-label">电话</label>
                  <div class="col-sm-8">
                    <input type="text" class="form-control" id="rtel" placeholder="请输入电话">
                  </div>
                </div>                              

                <div class="form-group">
                    <label for="rvalidateCode" class="col-sm-4 control-label">验证码</label>
                    <div class="col-sm-4">
                      <input type="text" class="form-control" id="rvalidateCode" placeholder="请输入验证码">
                    </div>
                    <div class="col-sm-4">
                        <img src="images/yzm.jpg" alt="" width="75px" height="35px">
                      </div>
                  </div>

                <div class="form-group">
                  <div class="col-sm-offset-2 col-sm-10">
                    <button type="button" id="registerBtn" class="btn btn-success" style=" 50%;" >注册</button>
                  </div>
                </div>
              </form>
            </div>
              <span style="color: red;" id="tip"></span>
          </div> 
        </div>

        <div class="footer">
                <p>&copy;版权所有:XXXXX学院XX市XX大道XXX号</p>  
                <p>邮编:530001联系邮箱:xxxxxxx@163.com</p> 
        </div>
      </div>
      <script>
        //首先获取表单的Input对象
        let username = document.getElementById("username");
        let password = document.getElementById("password");
        let validateCode = document.getElementById("validateCode");
        let span = document.getElementById("tip");
        let submitBtn = document.getElementById("submitBtn");
        console.log(validateCode);
       

        password.onblur = function()
        {
          validatepassword();
        }
        
        validateCode.onblur = function()
        {
          validatecode();
        }

        function validateusername()
        {
           let value = username.value;
           if(!value)
           {
              span.innerHTML="用户名不能为空";
              return false;
           }
           else if(value.length<2||value.length>11)
           {
            span.innerHTML="用户名的长度2-12位";
              return false;
           }
           else{
            span.innerHTML="";
              return true;
           }

        }

        function validatepassword()
        {
           let value = password.value;
           if(!value)
           {
              span.innerHTML="密码不能为空";
              return false;
           }
           else if(value.length<2||value.length>11)
           {
            span.innerHTML="密码的长度2-12位";
              return false;
           }
           else{
              span.innerHTML="";
              return true;
           }

        }

        function validatecode()
        {
           let value = validateCode.value;
           if(!value)
           {
              span.innerHTML="验证码不能为空";
              return false;
           }
           
           else{
            span.innerHTML="";
              return true;
           }

        }

       submitBtn.onclick=function(){
         if(validateusername()&&validatepassword()&&validatecode())
         {
          //document.getElementById("loginForm").submit();
          let strName = username.value;
          let strPwd = $("#password").val();
          let strCode = validateCode.value;
          //获取checkbox是否已选中
          let chkbox = $("input[name='remember']:checkbox").prop("checked");
          console.log(strName);
          console.log(strPwd);
          console.log(strCode);
          console.log(chkbox);
          $.ajax({
            url:"${pageContext.request.contextPath}/LoginServlet",//LoginTest/LoginServlet
            type:"post",
            dataType:"text",
            data:{username:strName,password:strPwd,validatecode:strCode,chkbox:chkbox},
            beforeSend:function(){
                 $("#tip").html("登录中.......");
            },
            success:function(data){  //是从servlet传回来的
              $("#tip").html("登录成功!");
              //window.location.url="";
            },
            error:function()
            {
              $("#tip").html("登录失败!");
            }
            
          
          });
         }
       
       }

// 注册验证





// 登录注册切换
       $(function(){
        //点击切换
        $('span').click(function(){
               $(this).addClass('tab_active').siblings().removeClass('tab_active');
               var i = $(this).index();
               $('.formcontent form').eq(i).css('display','block').siblings().css('display','none');
           });

       })


      </script>   



       <!-- jQuery (Bootstrap 的所有 JavaScript 插件都依赖 jQuery,所以必须放在前边) -->
       <script src="https://cdn.jsdelivr.net/npm/jquery@1.12.4/dist/jquery.min.js"></script>
       <!-- 加载 Bootstrap 的所有 JavaScript 插件。你也可以根据需要只加载单个插件。 -->
       <script src="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/js/bootstrap.min.js"></script>
</body>
</html>
View Code

6.效果图

7.存在的问题

(1)登录框无法居中,div class="col-md-4 form"块设置宽度后,设置margin:0 auto无法居中。

(2)注册span元素后面空出一点,使用span style="float: right;"的笨办法解决。

(3)注册js验证未做,js代码较多,应提取出来单独成一个文件。

转载文章链接已标明,如有侵权请告知。文章仅作为知识记忆所用,如有错误,敬请指正。
原文地址:https://www.cnblogs.com/YorkZhangYang/p/12688638.html