javascript 常用的正则表达式验证表单

  1 <!DOCTYPE html>
  2 <html lang="en">
  3 <head>
  4     <meta charset="UTF-8">
  5     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6     <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7     <title>Document</title>
  8     <style media="screen">
  9         body {
 10             background: #ccc;
 11         }
 12         label {
 13             width: 40px;
 14             display: inline-block;
 15         }
 16         .container {
 17             margin: 100px auto;
 18             width: 400px;
 19             padding: 50px;
 20             line-height: 40px;
 21             border: 1px solid #777;
 22             background: #efefef;
 23         }
 24         span {
 25             margin-left: 25px;
 26             font-size: 12px;
 27             padding: 2px 20px 0;
 28             color: #ccc;
 29         }
 30         .right {
 31             color: green;
 32             background: url(images/right.png) no-repeat;
 33         }
 34         .wrong {
 35             color: red;
 36             background: url(images/wrong.png) no-repeat;
 37         }
 38         .pwd {
 39             width: 220px;
 40             height: 20px;
 41             background: url(images/strong.jpg) no-repeat;
 42         }
 43         .str1 {
 44             background-position: 0 -20px;
 45         }
 46         .str2 {
 47             background-position: 0 -40px;
 48         }
 49         .str3 {
 50             background-position: 0 -60px;
 51         }
 52         .str4 {
 53             background-position: 0 -80px;
 54         }
 55     </style>
 56 </head>
 57 <body>
 58     <div class="container">
 59         <label for="inp1">QQ</label><input type="text" name="" id="inp1"><span>输入正确的QQ号码</span><br>
 60         <label for="inp2">手机</label><input type="text" name="" id="inp2"><span>输入13位手机号</span><br>
 61         <label for="inp3">邮箱</label><input type="text" name="" id="inp3"><span>输入正确邮箱</span><br>
 62         <label for="inp4">座机</label><input type="text" name="" id="inp4"><span>输入您的座机</span><br>
 63         <label for="inp5">账号</label><input type="text" name="" id="inp5"><span>亲输入您的账号</span><br>
 64         <label for="inp6">密码</label><input type="text" name="" id="inp6"><span>请输入您的密码</span><br>
 65         <div id="password" class="pwd"></div>
 66     </div>
 67
 68     <script type="text/javascript">
 69         var password = document.getElementById("password");
 70
 71         //qq号
 72         addEvent("inp1",function(){
 73             if (/^[1-9][0-9]{4,}$/.test(this.value)) {
 74                 setClassInner(this,"right","恭喜您,输入正确!");
 75             }else {
 76                 setClassInner(this,"wrong","格式错误!");
 77             }
 78         });
 79
 80         //手机号
 81         addEvent("inp2",function(){
 82             if (/^((13[0-9])|(15[^4,\D])|(18[0-9]))\d{8}$/.test(this.value)) {
 83                 setClassInner(this,"right","恭喜您,输入正确!");
 84             }else {
 85                 setClassInner(this,"wrong","格式错误!");
 86             }
 87         });
 88
 89         //邮箱
 90         addEvent("inp3",function(){
 91             if (/^[\w\-\.]{5,}\@[\w]+\.[\w]{2,4}$/.test(this.value)) {
 92                 setClassInner(this,"right","恭喜您,输入正确!");
 93             }else {
 94                 setClassInner(this,"wrong","格式错误!");
 95             }
 96         });
 97
 98         //座机
 99         addEvent("inp4",function(){
100             if (/(^0\d{2}-8\d{7}$)|(^0\d{3}-3\d{6}$)/.test(this.value)) {
101                 setClassInner(this,"right","恭喜您,输入正确!");
102             }else {
103                 setClassInner(this,"wrong","格式错误!");
104             }
105         });
106
107         //账号
108         addEvent("inp5",function(){
109             if (/^[a-zA-Z0-9_-]{3,16}$/.test(this.value)) {
110                 setClassInner(this,"right","恭喜您,输入正确!");
111             }else {
112                 setClassInner(this,"wrong","格式错误!");
113             }
114         });
115
116         //密码
117         addEvent("inp6",function(){
118             if (/^[a-zA-Z0-9_\-$]{6,18}$/.test(this.value)) {
119                 setClassInner(this,"right","恭喜您,输入正确!");
120                 password.className = "pwd str1";
121                 //只有密码通过了,才能执行密码强度测试
122                 //从大往小判断
123                 if (/^[A-Za-z0-9]+[_$][A-Za-z0-9]*$/.test(this.value)) {
124                     password.className = "pwd str4";
125                 }else if (/^([a-z].*[0-9])|([A-Z].*[0-9])|[0-9].*[a-zA-Z]$/.test(this.value)) {
126                     password.className = "pwd str3";
127                 }else if (/^([a-z].*[A-Z])|([A-Z].*[a-z])$/.test(this.value)) {
128                     password.className = "pwd str2";
129                 }
130             }else {
131                 setClassInner(this,"wrong","格式错误!");
132             }
133         });
134
135         //封装重复代码
136         function addEvent(str,fn){
137             document.getElementById(str).onblur = fn;
138         }
139         function setClassInner(aaa,rw,txt){
140             var span = aaa.nextElementSibling || aaa.nextSibling;
141             span.className = rw;
142             span.innerHTML = txt;
143         }
144     </script>
145 </body>
146 </html>

原文地址:https://www.cnblogs.com/knuzy/p/8893517.html

时间: 2024-08-30 05:55:00

javascript 常用的正则表达式验证表单的相关文章

JavaScript---通过正则表达式验证表单输入

验证输入的name只能是数字或字母或下划线 js <script type="text/javascript"> function submitOn(){ var f = document.getElementById("userfrm"); var isValiUserName = false, isValiPassword = false; var userNameStr = f.username.value; var passwordStr = f

正则表达式验证表单

不错的JS验证~~~~~~~~~~~~~~~~~~~~~~~~~ 用途:校验ip地址的格式 输入:strIP:ip地址 返回:如果通过验证返回true,否则返回false: */ function isIP(strIP) { if (isNull(strIP)) return false; var re=/^(\d+)\.(\d+)\.(\d+)\.(\d+)$/g //匹配IP地址的正则表达式 if(re.test(strIP)) { if( RegExp.$1 [email protecte

js正则表达式--验证表单

检测手机号码:/0?(13|14|15|18)[0-9]{9}/ 检测用户名:(数字,英文,汉字,下划线,中横线):/^[A-Za-z0-9_\-\u4e00-\u9fa5]+$/ 密码:(数字,英文,下划线,中横线)/^[A-Za-z0-9_-]+$/ 身份证:/\d{17}[\d|x]|\d{15}/ 非空:/^\S+$/ IP地址:/((?:(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d?\d))/ js的正

Html5页面使用javascript setCutomValidity()函数验证表单判断输入

<!DOCTYPE HTML><head><meta charset="UTF-8"><title>Html5页面使用javascript验证表单判断输入</title><script language="javascript">function check(){    var pass1=document.getElementbyid("pass1");    var pa

JavaScript 验证表单不为空和获取select下拉列表的值和文本

1.验证表单不为空 var hasform = { "Name": "名字",                "Id_card": "身份证", "PaySalary": "月工资",                "CardCode": "账号", "Fk_Subjectf_Code": "功能科目",  

验证表单是否为空

验证表单是否为空,或者全是数字 可以用   var  reg = /^\s*(\S+)\s*$/;  正则表达式判断. var reg = /^\s*(\S+)\s*$/; if(reg.test(list[i].value)){ //将空格替换 RegExp.$1捕获匹配的非空格 list[i].value=RegExp.$1; }else{ alert('不能为空'); return; }

js 验证表单 js提交验证类

js 验证表单 js提交验证类 附加:js验证radio是否选择 <script language="javascript">function checkform(obj){for(i=0;i<obj.oo.length;i++)         if(obj.oo[i].checked==true) return true; alert("请选择")return false; }</script><form id="f

jquery验证表单 提交表单

问题: jquery中使用submit提交按钮时,当return false后,依然会提交表单. 解决: 使用button按钮,而不是submit按钮 <script type="text/javascript" src="scripts/jquery-2.0.2.js"></script> <script type="text/javascript"> function check(){ var npassw

js验证表单大全

js验证表单大全1. 长度限制<script>function test() {if(document.a.b.value.length>50){alert("不能超过50个字符!");document.a.b.focus();return false;}}</script><form name=a onsubmit="return test()"><textarea name="b" cols=&