<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<script type="application/javascript">
//验证码
function createCode(){
var code = Math.floor(Math.random()*9000+1000)
var span = document.getElementById("codeSpan")
span.innerHTML=code
return code
}
//验证用户名
function codeUser(){
return codedata("user",/^[\u4e00-\u9fa5]{2,4}$/)
}
//验证密码
function codePassword(){
return codedata("password",/^(?:\d+|[a-zA-Z]+|[!@#$%^&*]+)$/)
return codePassword2()
}
//校验密码
function codePassword2(){
//获取第一次密码
var pwd =document.getElementById("password").value
//获取第二次密码
var pwd2 =document.getElementById("password2").value
//比较两次密码是否相同
var span =document.getElementById("password2Span")
if(pwd2==""||pwd2==null){
span.innerHTML="确认密码不能为空"
return false
}else if(pwd2=pwd){
span.innerHTML="ok"
return true
}else{
span.innerHTML="两次密码不一致"
return false
}
}
//验证手机号
function codePhone(){
return codedata("phone",/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/)
}
//验证邮箱
function codeEmail(){
return codedata("email",/^[A-Za-z\d]+([-_.][A-Za-z\d]+)*@([A-Za-z\d]+[-.])+[A-Za-z\d]{2,4}$/)
}
//封装
function codedata(a,reg1){
//获取用户的用户信息
var user = document.getElementById(a).value
var span = document.getElementById(a+"Span")
var alt = document.getElementById(a).alt
//创建校验规则
var reg=reg1;
//校验
if(user==""|| user==null){
span.innerHTML=alt+"不能为空"
return false
}else if(reg.test(user)){
span.innerHTML=alt+"ok"
return true
}else{
span.innerHTML=alt+"不符合规则"
return false
}
} //验证籍贯
function codeCity(){
//获取用户选择的数据
var sel=document.getElementById("city").value; //获取span
var span=document.getElementById("citySpan");
//校验
if(sel!=0){
span.innerHTML="籍贯选择成功"
return true
}else{
span.innerHTML="籍贯不能为空"
return false
}
}
//验证爱好
function codeHobby(){
//获取爱好
var hobbys = document.getElementsByName("hobby")
var span = document.getElementById("hobbySpan")
for(var i =0;i<hobbys.length;i++){
if(hobbys[i].checked){
span.innerHTML="选择爱好成功"
return true
}
}
span.innerHTML="爱好至少选择一项"
return false
}
//校验是否同意公司协议
function checkAgree(){ document.getElementById("zc").disabled=!document.getElementById("agree").checked;
}
//提交判断
function checkSub(){
codeUser();
codePassword();
codePassword2();
codePhone();
codeEmail();
codeCity();
codeHobby();
return codeUser()&&codePassword()&&codePassword2()&&codePhone()&&codeEmail()&&codeCity()&&codeHobby();
}
</script>
</head>
<body onload="createCode()">
<div>
<form name="" action="demo01.html" onsubmit="return checkSub()">
用户名:<input type="text" name="user" id="user" value="" onblur="codeUser()" alt="用户名"><span id="userSpan"></span><br>
密码:<input type="password" name="password" id="password" onblur="codePassword()" alt="密码"><span id="passwordSpan"></span><br>
确认密码:<input type="password" name="password2" id="password2" onblur="codePassword2()"><span id="password2Span"></span><br>
手机号:<input type="text" name="phone" id="phone" alt="手机号" onblur="codePhone()" alt="手机号"><span id="phoneSpan"></span><br>
邮箱:<input type="text" name="email" id="email" alt="邮箱" onblur="codeEmail()"><span id="emailSpan"></span><br>
性别: 男<input type="radio" name="sex" id="man" checked="checked"> &nbsp;&nbsp;
女<input type="radio" name="sex" id="feman"><br>
籍贯:<select id="city" name="city" onchange="codeCity()">
<option value="0">-请选择-</option>
<option value="1">广州</option>
<option value="2">上海</option>
<option value="3">北京</option>
</select><span id="citySpan"></span><br>
爱好:<input type="checkbox"name="hobby" value="lol" onclick="codeHobby()">LOL &nbsp;
<input type="checkbox"name="hobby" value="sleep" onclick="codeHobby()">睡觉 &nbsp;
<input type="checkbox"name="hobby" value="eat" onclick="codeHobby()">吃饭 &nbsp;
<input type="checkbox"name="hobby" value="listen" onclick="codeHobby()">听歌 &nbsp;
<span id="hobbySpan"></span>
<br>
个人介绍:<textarea name="inc"></textarea><br>
验证码:<input type="text" name="code" id="code" ><span id="codeSpan" onclick="createCode()"></span><br>
<input type="checkbox"name="agree" id="agree" onclick="checkAgree()" >是否同意本公司协议<br>
<input type="submit" name="zc" id="zc" value="立即注册" disabled="disabled">
</form>
</div>
</body>
</html>

最新文章

  1. 黑马程序员----java基础笔记下(毕向东)
  2. C#正则表达式Regex常用匹配
  3. 解决VS2015启动界面卡在白屏的处理方法
  4. 大批量GPS坐标转百度坐标
  5. 使用redis-dump进行Redis数据库合并
  6. 从window.console&amp;&amp;console.log(123)浅谈JS的且运算逻辑(&amp;&amp;)
  7. 从ICLassFactory 为 CLSID的COM组建创建实例失败:c001f011
  8. HDU 5647 DZY Loves Connecting 树形dp
  9. Programming pages of Jasper Neumann
  10. Shortest Prefixes
  11. CodeForces 546D
  12. MySQL安装与使用过程中的相关问题
  13. redis单点、redis主从、redis哨兵sentinel,redis集群cluster配置搭建与使用
  14. HDOJ 5639 Transform
  15. JMETER之socket接口性能测试
  16. Prism 学习:从配置文件中加载 Module
  17. select2 使用方法总结
  18. Softmax &amp;&amp; Cross-entropy Error
  19. Docker技术入门与实战 第二版-学习笔记-8-网络功能network-2-相应配置
  20. java.lang.IncompatibleClassChangeError:可以考虑是否是jar包冲突

热门文章

  1. undertow配置
  2. 第2篇 Scrum 冲刺博客
  3. Python脚本实现在cmd执行相关命令
  4. php实现视频拍照上传头像功能实例代码
  5. 6. 二十不惑,ObjectMapper使用也不再迷惑
  6. 牛客网PAT练兵场-数字黑洞
  7. docker-compose 官网下载特别慢怎么办?
  8. 力扣Leetcode 98. 验证二叉搜索树
  9. 力扣Leetcode 199. 二叉树的右视图
  10. 揭秘日活千万腾讯会议全量云原生化上TKE技术实践