jQuery实现所有验证通过方可提交的表单验证


Posted in jQuery onNovember 21, 2017

本文实例为大家分享了jQuery实现表单验证的具体代码,供大家参考,具体内容如下

<html>
 <head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <title>Reg</title>
  <style>
   .state1{
    color:#aaa;
   }
   .state2{
    color:#000;
   }
   .state3{
    color:red;
   }
   .state4{
    color:green;
   }
  </style>
  <script src="jquery.js"></script>
  <script>
   $(function(){
 
    var ok1=false;
    var ok2=false;
    var ok3=false;
    var ok4=false;
    // 验证用户名
    $('input[name="username"]').focus(function(){
     $(this).next().text('用户名应该为3-20位之间').removeClass('state1').addClass('state2');
    }).blur(function(){
     if($(this).val().length >= 3 && $(this).val().length <=12 && $(this).val()!=''){
      $(this).next().text('输入成功').removeClass('state1').addClass('state4');
      ok1=true;
     }else{
      $(this).next().text('用户名应该为3-20位之间').removeClass('state1').addClass('state3');
     }
      
    });
 
    //验证密码
    $('input[name="password"]').focus(function(){
     $(this).next().text('密码应该为6-20位之间').removeClass('state1').addClass('state2');
    }).blur(function(){
     if($(this).val().length >= 6 && $(this).val().length <=20 && $(this).val()!=''){
      $(this).next().text('输入成功').removeClass('state1').addClass('state4');
      ok2=true;
     }else{
      $(this).next().text('密码应该为6-20位之间').removeClass('state1').addClass('state3');
     }
      
    });
 
    //验证确认密码
     $('input[name="repass"]').focus(function(){
     $(this).next().text('输入的确认密码要和上面的密码一致,规则也要相同').removeClass('state1').addClass('state2');
    }).blur(function(){
     if($(this).val().length >= 6 && $(this).val().length <=20 && $(this).val()!='' && $(this).val() == $('input[name="password"]').val()){
      $(this).next().text('输入成功').removeClass('state1').addClass('state4');
      ok3=true;
     }else{
      $(this).next().text('输入的确认密码要和上面的密码一致,规则也要相同').removeClass('state1').addClass('state3');
     }
      
    });
 
    //验证邮箱
    $('input[name="email"]').focus(function(){
     $(this).next().text('请输入正确的EMAIL格式').removeClass('state1').addClass('state2');
    }).blur(function(){
     if($(this).val().search(/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/)==-1){
      $(this).next().text('请输入正确的EMAIL格式').removeClass('state1').addClass('state3');
     }else{     
      $(this).next().text('输入成功').removeClass('state1').addClass('state4');
      ok4=true;
     }
      
    });
 
    //提交按钮,所有验证通过方可提交
 
    $('.submit').click(function(){
     if(ok1 && ok2 && ok3 && ok4){
      $('form').submit();
     }else{
      return false;
     }
    });
     
   });
  </script>
 </head>
<body>
 
<form action='do.php' method='post' >
 用 户 名:<input type="text" name="username">
    <span class='state1'>请输入用户名</span><br/><br/>
 密码:<input type="password" name="password">
    <span class='state1'>请输入密码</span><br/><br/>
 确认密码:<input type="password" name="repass">
    <span class='state1'>请输入确认密码</span><br/><br/>
 邮
箱:<input type="text" name="email">
    <span class='state1'>请输入邮箱</span><br/><br/> 
 <a href="javascript:;" rel="external nofollow" ><img class='submit' type='image' src='./images/reg.gif' /></a>
</form>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
推荐三款日期选择插件(My97DatePicker、jquery.datepicker、Mobiscroll)
Apr 21 jQuery
jQuery实现动态添加、删除按钮及input输入框的方法
Apr 27 jQuery
jQuery插件select2利用ajax高效查询大数据列表(可搜索、可分页)
May 19 jQuery
jquery+css实现侧边导航栏效果
Jun 12 jQuery
jquery实现一个全局计时器(商城可用)
Jun 30 jQuery
jQuery实现节点的追加、替换、删除、复制功能示例
Jul 11 jQuery
JQuery 获取多个select标签option的text内容(实例)
Sep 07 jQuery
jQuery实现的自定义轮播图功能详解
Dec 28 jQuery
JQuery获得内容和属性方法解析
May 30 jQuery
JQuery使用数组遍历跳出each循环
Sep 01 jQuery
基于jQuery拖拽事件的封装
Nov 29 jQuery
jquery插件实现代码雨特效
Apr 24 jQuery
jquery-file-upload 文件上传带进度条效果
Nov 21 #jQuery
jquery ajaxfileupload异步上传插件
Nov 21 #jQuery
jquery中有哪些api jQuery主要API
Nov 20 #jQuery
jquery ztree实现右键收藏功能
Nov 20 #jQuery
jQuery实现checkbox的简单操作
Nov 18 #jQuery
基于jquery实现五星好评
Nov 18 #jQuery
jQuery实现滚动效果
Nov 17 #jQuery
You might like
PHP的FTP学习(三)
2006/10/09 PHP
深入解析php之sphinx
2013/05/15 PHP
php通过smtp邮件验证登陆的方法
2016/05/11 PHP
关于laravel框架中的常用目录路径函数
2019/10/23 PHP
jQuery EasyUI 的EasyLoader功能介绍
2010/09/12 Javascript
jquery拖动插件(jquery.drag)使用介绍
2013/06/18 Javascript
JS 操作Array数组的方法及属性实例解析
2014/01/08 Javascript
两种不同的方法实现js对checkbox进行全选和反选
2014/05/13 Javascript
node.js中的console.dir方法使用说明
2014/12/10 Javascript
JS实现文字链接感应鼠标淡入淡出改变颜色的方法
2015/02/26 Javascript
使用javascript实现判断当前浏览器
2015/04/14 Javascript
js上传图片及预览功能实例分析
2015/04/24 Javascript
javascript实现输出指定行数正方形图案的方法
2015/08/03 Javascript
jquery如何获取元素的滚动条高度等实现代码
2015/10/19 Javascript
jQuery UI Bootstrap是什么?
2016/06/17 Javascript
bootstrap与Jquery UI 按钮样式冲突的解决办法
2016/09/23 Javascript
微信小程序 动态绑定事件并实现事件修改样式
2017/04/13 Javascript
js 数组详细操作方法及解析合集
2018/06/01 Javascript
vue路由守卫,限制前端页面访问权限的例子
2019/11/11 Javascript
vue项目使用$router.go(-1)返回时刷新原来的界面操作
2020/07/26 Javascript
[37:29]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第二场 11.19
2020/11/19 DOTA
python实现在windows下操作word的方法
2015/04/28 Python
Python3结合Dlib实现人脸识别和剪切
2018/01/24 Python
python爬取m3u8连接的视频
2018/02/28 Python
Django使用Mysql数据库已经存在的数据表方法
2018/05/27 Python
Django框架模板文件使用及模板文件加载顺序分析
2019/05/23 Python
python爬取盘搜的有效链接实现代码
2019/07/20 Python
Python3+RIDE+RobotFramework自动化测试框架搭建过程详解
2020/09/23 Python
HTML5中的Article和Section元素认识及使用
2013/03/22 HTML / CSS
StubHub哥伦比亚:购买和出售您的门票
2016/10/20 全球购物
Emporio Armani腕表天猫官方旗舰店:乔治·阿玛尼为年轻人设计的副线品牌
2017/07/02 全球购物
莫斯科大型旅游休闲商品超市:Camping.ru
2020/09/16 全球购物
货代行业个人求职简历的自我评价
2013/10/22 职场文书
餐饮收银员岗位职责
2014/02/07 职场文书
学校班子个人对照检查材料思想汇报
2014/09/27 职场文书
MySQL注入基础练习
2021/05/30 MySQL