html+js实现简单的登陆页面

效果图


image.png

html代码

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>

<body>
<!--导航开始-->
<div class="nav">
     
</div>
<!--导航结束-->

<div class="divAll"> 
   <div id="titles">提交信息</div> 
   <div id="contents"> 
   <form action="#" onSubmit="return checkForm()"> 

      <div id="form-itemGroup">
      <p for="userName">姓名:<span class="default" id="nameErr" style="float: right;"></p> </span>
      <input type="text" id="userName" class="user" onBlur="checkUserName()" oninput="checkUserName()" placeholder="请输入至少2位的姓名"> 
      </div>

      <div id="form-itemGroup">
      <p for="IDcard">身份证号:<span class="default" id="IDcardErr" style="float: right;"></span></p> 
      <input type="text" id="IDcard" class="user" onBlur="checkIDcard()" oninput="checkIDcard()" placeholder="请输入18位的身份证号"> 
      <span class="default" id="IDcardErr" ></span>
      </div>
      
      <div id="form-itemGroup">
      <p for="userNameJ">监护人姓名:<span class="default" id="nameJErr" style="float: right;"></span></p>
      <input type="text" id="userNameJ" class="user" onBlur="checkUserNameJ()" oninput="checkUserNameJ()" placeholder="请输入至少2位的姓名"> 
      </div>

      <div id="form-itemGroup">
      <p for="IDcardJ">监护人身份证号:<span class="default" id="IDcardJErr" style="float: right;"></span></p> 
      <input type="text" id="IDcardJ" class="user" onBlur="checkIDcardJ()" oninput="checkIDcardJ()" placeholder="请输入18位的监护人身份证号">
      </div>

      <div id="form-itemGroup">
      <p for="PhoneNum">手机号码:<span class="default" id="PhoneNumErr" style="float: right;"></span></p> 
      <input type="text" id="PhoneNum" class="user" onBlur="checkPhoneNum()" oninput="checkPhoneNum()" placeholder="请输入手机号码">
      </div>

      <div id="form-itemGroup">
      <p for="YanZheng">验证码:<span class="default" id="YanZhengErr" style="float: right;"></span></p>
      <input type="text" id="YanZheng" class="user" onBlur="checkYanZheng()" oninput="checkYanZheng()" placeholder="请输入手机验证码" style="width: 200px; ">
      <button type="button" class="hqyzm">获取验证码</button>
      </div>

      <div id="form-itemGroup" align="center">
      <div class="checkbox" id="YongHuXieYi">
        <label>
          <input type="checkbox" onclick="yhxy()"> 用户协议
        </label>
      </div>
      </div>

      <div align="center">
      <button type="submit" class="divBtn">提交</button>
      </div>
     <!-- -->
   </form> 

   </div> 
 </div>

 <div class="foot">

 </div>
</body>
</html>

css样式

<style type="text/css"> 
*{
    font-family: '微软雅黑';
  padding: 0px;
  margin:0px;
}
 .nav{
  background-color: #F93;
  width: 100%;
  height: 50px;
 } 
 .divAll{ 
   width:325px; 
   margin:50px auto; 
   }
 #titles{ 
   font-weight:bold; 
   font-size:18px; 
   height:50px; 
   line-height:50px; 
   background:#FFF9F3; 
   text-align:center;  
   border:1px solid #CCC;; 
   }
 #contents{ 
    margin-top:20px; 
    background:#FFF9F3; 
    border:1px solid #CCC;; 
    }
  #form-itemGroup{ 
   padding:10px;  
   width:300px; 
    }
  #form-itemGroup p{ 
    width:300px;
    display:inline-block; 
    height:32px; 
    line-height:32px; 
    color:#666; 
    margin-bottom: 0px;
    }
  #form-itemGroup .user{ 
    width:300px; 
        height:25px; 
    line-height:40px; 
    border:1px solid #CCC;
    }  
  #form-itemGroup .default{ 
    width:200px; 
    height:32px; 
    line-height:32px; 
    color:#999; 
    font-size: 14px;
    } 
  #form-itemGroup .error{ 
    height:32px; 
    line-height:32px; 
    color:#F00; 
    font-size: 14px;
    }
  #form-itemGroup .success{ 
    height:32px; 
    line-height:32px; 
    color:#096; 
    font-size: 14px;
    }  
  #form-itemGroup .hqyzm{ 
    width:90px; 
    height:25px;
    background-color:#F93; 
    color:#ffffff; 
    border:none; 
    }
   #form-itemGroup #YongHuXieYi { 
    font-size: 12px;
    text-decoration: underline;
   }
  .divBtn{ 
    margin-top:20px; 
    width:100px; 
    height:32px; 
    line-height:32px; 
    background-color:#F93; 
    margin-bottom:30px; 
    color:#ffffff; 
    font-weight:bold; 
    border:none; 
    } 
  .foot {
    width: 100%;
    height: 200px;
    background-color: #F93;
  }

</style>

js正则验证输入的信息是否符合规定

<script type="text/javascript"> 
 function checkForm(){ 
  var nametip = checkUserName(); 
  var IDcardip=checkIDcard();
  var namejtip = checkUserNameJ(); 
  var IDcardJip=checkIDcardJ();
  var phonenumip=checkPhoneNum();
  var yanzhengip=checkYanZheng()
  return nametip&&IDcardip&&namejtip&&IDcardJip&&phonenumip&&yanzhengip; 
  } 
  //验证姓名   
  function checkUserName(){ 
  var username = document.getElementById('userName'); 
  var errname = document.getElementById('nameErr'); 
  var pattern = /^\w{2,}$/;  //姓名格式正则表达式:用户名要至少2位 
  if(username.value.length == 0){ 
    errname.innerHTML="姓名不能为空"
    errname.className="error"
    return false; 
    } 
  if(!pattern.test(username.value)){ 
    errname.innerHTML="姓名不合规范"
    errname.className="error"
    return false; 
    } 
   else{ 
     errname.innerHTML="格式正确"
     errname.className="success"; 
     return true; 
     } 
  }
  //验证身份证号 
  function checkIDcard(){ 
  var idcard = document.getElementById('IDcard'); 
  var erridcard = document.getElementById('IDcardErr'); 
  var pattern = /^\w{18,18}$/;  //身份证格式正则表达式:身份证要18位 
  if(idcard.value.length == 0){ 
    erridcard.innerHTML="身份证号不能为空"
    erridcard.className="error"
    return false; 
    } 
  if(!pattern.test(idcard.value)){ 
    erridcard.innerHTML="身份证号不合规范"
    erridcard.className="error"
    return false; 
    } 
   else{ 
     erridcard.innerHTML="格式正确"
     erridcard.className="success"; 
     return true; 
     } 
  }
  //验证监护人姓名   
  function checkUserNameJ(){ 
  var usernamej = document.getElementById('userNameJ'); 
  var errnamej = document.getElementById('nameJErr'); 
  var pattern = /^\w{2,}$/;  //姓名格式正则表达式:用户名要至少2位 
  if(usernamej.value.length == 0){ 
    errnamej.innerHTML="姓名不能为空"
    errnamej.className="error"
    return false; 
    } 
  if(!pattern.test(usernamej.value)){ 
    errnamej.innerHTML="姓名不合规范"
    errnamej.className="error"
    return false; 
    } 
   else{ 
     errnamej.innerHTML="格式正确"
     errnamej.className="success"; 
     return true; 
     } 
  }
  //验证监护人身份证号 
  function checkIDcardJ(){ 
  var idcardj = document.getElementById('IDcardJ'); 
  var erridcardj = document.getElementById('IDcardJErr'); 
  var pattern = /^\w{18,18}$/;  //身份证格式正则表达式:身份证要18位 
  if(idcardj.value.length == 0){ 
    erridcardj.innerHTML="身份证号不能为空"
    erridcardj.className="error"
    return false; 
    } 
  if(!pattern.test(idcardj.value)){ 
    erridcardj.innerHTML="身份证号不合规范"
    erridcardj.className="error"
    return false; 
    } 
   else{ 
     erridcardj.innerHTML="格式正确"
     erridcardj.className="success"; 
     return true; 
     } 
  }

  //验证本人手机号码
  function checkIDcardJ(){ 
  var idcardj = document.getElementById('IDcardJ'); 
  var erridcardj = document.getElementById('IDcardJErr'); 
  var pattern = /^\w{18,18}$/;  //身份证格式正则表达式:身份证要18位 
  if(idcardj.value.length == 0){ 
    erridcardj.innerHTML="身份证号不能为空"
    erridcardj.className="error"
    return false; 
    } 
  if(!pattern.test(idcardj.value)){ 
    erridcardj.innerHTML="身份证号不合规范"
    erridcardj.className="error"
    return false; 
    } 
   else{ 
     erridcardj.innerHTML="格式正确"
     erridcardj.className="success"; 
     return true; 
     } 
  }

  //验证本人手机号码
  function checkPhoneNum(){ 
  var phonenum = document.getElementById('PhoneNum'); 
  var errphonenum = document.getElementById('PhoneNumErr'); 
  var pattern = /^\w{11,11}$/;  //手机号码格式正则表达式:手机号码要11位 
  if(phonenum.value.length == 0){ 
    errphonenum.innerHTML="手机号码不能为空"
    errphonenum.className="error"
    return false; 
    } 
  if(!pattern.test(phonenum.value)){ 
    errphonenum.innerHTML="手机号码不合规范"
    errphonenum.className="error"
    return false; 
    } 
   else{ 
     errphonenum.innerHTML="格式正确"
     errphonenum.className="success"; 
     return true; 
     } 
  }

  //验证手机验证码
  function checkYanZheng(){ 
  var yanzheng = document.getElementById('YanZheng'); 
  var erryanzheng = document.getElementById('YanZhengErr'); 
  var pattern = /^\w{4,4}$/;  //手机号码格式正则表达式:手机号码要11位 
  if(yanzheng.value.length == 0){ 
    erryanzheng.innerHTML="验证码不能为空"
    erryanzheng.className="error"
    return false; 
    } 
  if(!pattern.test(yanzheng.value)){ 
    erryanzheng.innerHTML="验证码不合规范"
    erryanzheng.className="error"
    return false; 
    } 
   else{ 
     erryanzheng.innerHTML="格式正确"
     erryanzheng.className="success"; 
     return true; 
     } 
  }

  //用户协议
  function yhxy(){
    alert("用户协议用户协议用户协议用户协议!");
  }
  
  
</script>
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,723评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,003评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,512评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,825评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,874评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,841评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,812评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,582评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,033评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,309评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,450评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,158评论 5 341
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,789评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,409评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,609评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,440评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,357评论 2 352