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 相关文章推荐
jQuery遍历节点方法汇总(推荐)
May 13 jQuery
jQuery实现切换隐藏与显示同时切换图标功能
Oct 29 jQuery
jQuery实现图片简单轮播功能示例
Aug 13 jQuery
jQuery实现的页面弹幕效果【测试可用】
Aug 17 jQuery
解决jQuery使用append添加的元素事件无效的问题
Aug 30 jQuery
Vue项目中使用jquery的简单方法
May 16 jQuery
JavaScript实现的弹出遮罩层特效经典示例【基于jQuery】
Jul 10 jQuery
js与jquery获取input输入框中的值实例讲解
Feb 27 jQuery
JQuery事件冒泡和默认行为代码实例
May 13 jQuery
jQuery实现动态操作table行
Nov 23 jQuery
jquery实现拖拽添加元素功能
Dec 01 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 smarty模版引擎中变量操作符及使用方法
2009/12/11 PHP
php strrpos()与strripos()函数
2013/08/31 PHP
解决php表单重复提交实现方法
2015/09/29 PHP
php创建无限级树型菜单
2015/11/05 PHP
PHP+JS三级菜单联动菜单实现方法
2016/02/24 PHP
PHP调用微博接口实现微博登录的方法示例
2018/09/22 PHP
YII框架学习笔记之命名空间、操作响应与视图操作示例
2019/04/30 PHP
javascript使用call调用微信API
2014/12/15 Javascript
jQuery及JS实现循环中暂停的方法
2015/02/02 Javascript
javascript清空table表格的方法
2015/05/14 Javascript
jQuery.datatables.js插件用法及api实例详解
2016/10/28 Javascript
详解JS中定时器setInterval和setTImeout的this指向问题
2017/01/06 Javascript
Vue + Webpack + Vue-loader学习教程之相关配置篇
2017/03/14 Javascript
自带气泡提示的vue校验插件(vue-verify-pop)
2017/04/07 Javascript
jquery实现图片跟随鼠标的实例
2017/10/17 jQuery
详解Angular中通过$location获取地址栏的参数
2018/08/02 Javascript
JavaScript引用类型之基本包装类型实例分析【Boolean、Number和String】
2018/08/09 Javascript
vuex管理状态 刷新页面保持不被清空的解决方案
2019/11/11 Javascript
JS实现百度搜索框关键字推荐
2020/02/17 Javascript
jquery实现垂直手风琴菜单
2020/03/04 jQuery
Javascript Web Worker使用过程解析
2020/03/16 Javascript
将Vue组件库更换为按需加载的方法步骤
2020/05/06 Javascript
[43:35]TI4 循环赛第二日Liquid vs Fnatic
2014/07/11 DOTA
python利用标准库如何获取本地IP示例详解
2017/11/01 Python
python多进程中的内存复制(实例讲解)
2018/01/05 Python
学生信息管理系统python版
2018/10/17 Python
python数据爬下来保存的位置
2020/02/17 Python
深入了解Python 方法之类方法 &amp; 静态方法
2020/08/17 Python
用canvas实现图片滤镜效果附演示
2013/11/05 HTML / CSS
纽约的奢华内衣店:Journelle
2016/07/29 全球购物
附答案的Java面试题
2012/11/19 面试题
学习党课思想汇报
2013/12/29 职场文书
摄影助理岗位职责
2014/02/07 职场文书
保护环境的标语
2014/06/09 职场文书
2015年团队工作总结范文
2015/05/04 职场文书
Java中多线程下载图片并压缩能提高效率吗
2021/07/01 Java/Android