实例讲解:验证输入的是否是数字,是否满足数字位数,如果错误,并进行友情提醒。
效果图:
<!DOCTYPE html> <html> <body> <h1>我的第一段 JavaScript</h1> <p>请输入数字。如果输入值不是数字,浏览器会弹出提示框。</p> <input id=\"demo\" type=\"text\"> <script> function myFunction() { var x=document.getElementById(\"demo\").value; if(x==\"\"){ alert(\"输入不能为空\"); return; } if(isNaN(x)){ alert(\"请输入数字\"); return; } if(x.length!=6){ alert(\"请输入6位数字\"); return; } } </script> <button type=\"button\" onclick=\"myFunction()\">点击这里</button> </body> </html>
上面这个实例包含了许多常用的表单验证的代码,下面分享给大家:
1、验证表单
2、验证昵称
3、计算昵称长度
4、验证昵称是否存在
5、验证手机号
6、验证密码
7、验证邮箱
8、验证验证码
9、判断是否选中
注册验证为例:
<script language=\"JavaScript\" src=\"js/jquery-1.9.1.min.js\" type=\"text/javascript\"></script> //验证表单 function vailForm(){ var form = jQuery(\"#editForm\"); if(!vailNickName())return; if(!vailPhone())return; if(!vailPwd())return; if(!vailConfirmPwd())return; if(!vailEmail())return; if(!vailCode())return; if(!vailAgree())return; form.submit(); } //验证昵称 function vailNickName(){ var nickName = jQuery(\"#nickName\").val(); var flag = false; var message = \"\"; var patrn=/^\\d+$/; var length = getNickNameLength(); if(nickName == \'\'){ message = \"昵称不能为空!\"; }else if(length<4||length>16){ message = \"昵称为4-16个字符!\"; } else if(checkNickNameIsExist()){ message = \"该昵称已经存在,请重新输入!\"; }else{ flag = true; } if(!flag){ jQuery(\"#nickNameDiv\").removeClass().addClass(\"ui-form-item has-error\"); jQuery(\"#nickNameP\").html(\"\"); jQuery(\"#nickNameP\").html(\"<i class=\\\"icon-error ui-margin-right10\\\"> <\\/i>\"+message); //jQuery(\"#nickName\").focus(); }else{ jQuery(\"#nickNameDiv\").removeClass().addClass(\"ui-form-item has-success\"); jQuery(\"#nickNameP\").html(\"\"); jQuery(\"#nickNameP\").html(\"<i class=\\\"icon-success ui-margin-right10\\\"> <\\/i>该昵称可用\"); } return flag; } //计算昵称长度 function getNickNameLength(){ var nickName = jQuery(\"#nickName\").val(); var len = 0; for (var i = 0; i < nickName.length; i++) { var a = nickName.charAt(i); //函数格式:stringObj.match(rgExp) stringObj为字符串必选 rgExp为正则表达式必选项 //返回值:如果能匹配则返回结果数组,如果不能匹配返回null if (a.match(/[^\\x00-\\xff]/ig) != null){ len += 2; }else{ len += 1; } } return len; } //验证昵称是否存在 function checkNickNameIsExist(){ var nickName = jQuery(\"#nickName\").val(); var flag = false; jQuery.ajax( { url: \"checkNickName?t=\" + (new Date()).getTime(), data:{nickName:nickName}, dataType:\"json\", type:\"GET\", async:false, success:function(data) { var status = data.status; if(status == \"1\"){ flag = true; } } }); return flag; } //验证手机号 function vailPhone(){ var phone = jQuery(\"#phone\").val(); var flag = false; var message = \"\"; //var myreg = /^(((13[0-9]{1})|159|153)+\\d{8})$/; var myreg = /^(((13[0-9]{1})|(14[0-9]{1})|(17[0-9]{1})|(15[0-3]{1})|(15[5-9]{1})|(18[0-3]{1})|(18[5-9]{1}))+\\d{8})$/; if(phone == \'\'){ message = \"手机号码不能为空!\"; }else if(phone.length !=11){ message = \"请输入有效的手机号码!\"; }else if(!myreg.test(phone)){ message = \"请输入有效的手机号码!\"; }else if(checkPhoneIsExist()){ message = \"该手机号码已经被绑定!\"; }else{ flag = true; } if(!flag){ jQuery(\"#phoneDiv\").removeClass().addClass(\"ui-form-item has-error\"); jQuery(\"#phoneP\").html(\"\"); jQuery(\"#phoneP\").html(\"<i class=\\\"icon-error ui-margin-right10\\\"> <\\/i>\"+message); //jQuery(\"#phone\").focus(); }else{ jQuery(\"#phoneDiv\").removeClass().addClass(\"ui-form-item has-success\"); jQuery(\"#phoneP\").html(\"\"); jQuery(\"#phoneP\").html(\"<i class=\\\"icon-success ui-margin-right10\\\"> <\\/i>该手机号码可用\"); } return flag; } //验证手机号是否存在 function checkPhoneIsExist(){ var phone = jQuery(\"#phone\").val(); var flag = true; jQuery.ajax( { url: \"checkPhone?t=\" + (new Date()).getTime(), data:{phone:phone}, dataType:\"json\", type:\"GET\", async:false, success:function(data) { var status = data.status; if(status == \"0\"){ flag = false; } } }); return flag; } //验证密码 function vailPwd(){ var password = jQuery(\"#password\").val(); var flag = false; var message = \"\"; var patrn=/^\\d+$/; if(password ==\'\'){ message = \"密码不能为空!\"; }else if(password.length<6 || password.length>16){ message = \"密码6-16位!\"; }else if(patrn.test(password)){ message = \"密码不能全是数字!\"; }else{ flag = true; } if(!flag){ jQuery(\"#passwordDiv\").removeClass().addClass(\"ui-form-item has-error\"); jQuery(\"#passwordP\").html(\"\"); jQuery(\"#passwordP\").html(\"<i class=\\\"icon-error ui-margin-right10\\\"> <\\/i>\"+message); //jQuery(\"#password\").focus(); }else{ jQuery(\"#passwordDiv\").removeClass().addClass(\"ui-form-item has-success\"); jQuery(\"#passwordP\").html(\"\"); jQuery(\"#passwordP\").html(\"<i class=\\\"icon-success ui-margin-right10\\\"> <\\/i>该密码可用\"); } return flag; } //验证确认密码 function vailConfirmPwd(){ var confirmPassword = jQuery(\"#confirm_password\").val(); var patrn=/^\\d+$/; var password = jQuery(\"#password\").val(); var flag = false; var message = \"\"; if(confirmPassword == \'\'){ message = \"请输入确认密码!\"; }else if(confirmPassword != password){ message = \"二次密码输入不一致,请重新输入!\"; }else if(patrn.test(password)){ message = \"密码不能全是数字!\"; }else { flag = true; } if(!flag){ jQuery(\"#confirmPasswordDiv\").removeClass().addClass(\"ui-form-item has-error\"); jQuery(\"#confirmPasswordP\").html(\"\"); jQuery(\"#confirmPasswordP\").html(\"<i class=\\\"icon-error ui-margin-right10\\\"> <\\/i>\"+message); //jQuery(\"#confirm_password\").focus(); }else{ jQuery(\"#confirmPasswordDiv\").removeClass().addClass(\"ui-form-item has-success\"); jQuery(\"#confirmPasswordP\").html(\"\"); jQuery(\"#confirmPasswordP\").html(\"<i class=\\\"icon-success ui-margin-right10\\\"> <\\/i>密码正确\"); } return flag; } //验证邮箱 function vailEmail(){ var email = jQuery(\"#email\").val(); var flag = false; var message = \"\"; var myreg = /^([\\.a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\\.[a-zA-Z0-9_-])+/; if(email ==\'\'){ message = \"邮箱不能为空!\"; }else if(!myreg.test(email)){ message = \"请输入有效的邮箱地址!\"; }else if(checkEmailIsExist()){ message = \"该邮箱地址已经被注册!\"; }else{ flag = true; } if(!flag){ jQuery(\"#emailDiv\").removeClass().addClass(\"ui-form-item has-error\"); jQuery(\"#emailP\").html(\"\"); jQuery(\"#emailP\").html(\"<i class=\\\"icon-error ui-margin-right10\\\"> <\\/i>\"+message); //jQuery(\"#email\").focus(); }else{ jQuery(\"#emailDiv\").removeClass().addClass(\"ui-form-item has-success\"); jQuery(\"#emailP\").html(\"\"); jQuery(\"#emailP\").html(\"<i class=\\\"icon-success ui-margin-right10\\\"> <\\/i>该邮箱可用\"); } return flag; } //验证邮箱是否存在 function checkEmailIsExist(){ var email = jQuery(\"#email\").val(); var flag = false; jQuery.ajax( { url: \"checkEmail?t=\" + (new Date()).getTime(), data:{email:email}, dataType:\"json\", type:\"GET\", async:false, success:function(data) { var status = data.status; if(status == \"1\"){ flag = true; } } }); return flag; } //验证验证码 function vailCode(){ var randCode = jQuery(\"#randCode\").val(); var flag = false; var message = \"\"; if(randCode == \'\'){ message = \"请输入验证码!\"; }else if(!checkCode()){ message = \"验证码不正确!\"; }else{ flag = true; } if(!flag){ jQuery(\"#randCodeDiv\").removeClass().addClass(\"ui-form-item has-error\"); jQuery(\"#randCodeP\").html(\"\"); jQuery(\"#randCodeP\").html(\"<i class=\\\"icon-error ui-margin-right10\\\"> <\\/i>\"+message); //jQuery(\"#randCode\").focus(); }else{ jQuery(\"#randCodeDiv\").removeClass().addClass(\"ui-form-item has-success\"); jQuery(\"#randCodeP\").html(\"\"); jQuery(\"#randCodeP\").html(\"<i class=\\\"icon-success ui-margin-right10\\\"> <\\/i>\"); } return flag; } //检查随机验证码是否正确 function checkCode(){ var randCode = jQuery(\"#randCode\").val(); var flag = false; jQuery.ajax( { url: \"checkRandCode?t=\" + (new Date()).getTime(), data:{randCode:randCode}, dataType:\"json\", type:\"GET\", async:false, success:function(data) { var status = data.status; if(status == \"1\"){ flag = true; } } }); return flag; } //判断是否选中 function vailAgree(){ if(jQuery(\"#agree\").is(\":checked\")){ return true; }else{ alert(\"请确认是否阅读并同意XX协议\"); } return false; } function delHtmlTag(str){ var str=str.replace(/<\\/?[^>]*>/gim,\"\");//去掉所有的html标记 var result=str.replace(/(^\\s+)|(\\s+$)/g,\"\");//去掉前后空格 return result.replace(/\\s/g,\"\");//去除文章中间空格 }
以上就是实用的javascript表单验证,希望大家喜欢。
本文地址:https://www.stayed.cn/item/1435
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我