基于Jquery实现表单验证


Posted in Javascript onJuly 20, 2020

有时在我们注册账户、登陆系统时,当所有验证通过方可提交 这就需要Jquery来实现表单验证,今天分享给小伙伴们一段基于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:;"><img class='submit' type='image' src='./images/reg.gif' /></a>
</form>
</body>
</html>

以上就是本文的全部内容,希望大家可以喜欢。

Javascript 相关文章推荐
用js来解决ajax读取页面乱码
Nov 28 Javascript
javascript写的简单的计算器,内容很多,方法实用,推荐
Dec 29 Javascript
ExtJS下 Ext.Direct加载和提交过程排错小结
Apr 02 Javascript
Js 去掉字符串中的空格(实现代码)
Nov 19 Javascript
JavaScript类型检测之typeof 和 instanceof 的缺陷与优化
Jan 13 Javascript
移动端基础事件总结与应用
Jan 12 Javascript
vue axios用法教程详解
Jul 23 Javascript
详解tween.js 中文使用指南
Jan 05 Javascript
JavaScript设计模式之模板方法模式原理与用法示例
Aug 07 Javascript
js实现简单选项卡功能
Mar 23 Javascript
vue3.0 CLI - 2.3 - 组件 home.vue 中学习指令和绑定
Sep 14 Javascript
使用Angular 6创建各种动画效果的方法
Oct 10 Javascript
javascript+HTML5的canvas实现七夕情人节3D玫瑰花效果代码
Aug 04 #Javascript
jq实现左侧显示图片右侧文字滑动切换效果
Aug 04 #Javascript
javascript控制图片播放的实现代码
Jul 29 #Javascript
两种JS实现屏蔽鼠标右键的方法
Aug 20 #Javascript
Javascript实现鼠标右键特色菜单
Aug 04 #Javascript
JS脚本根据手机浏览器类型跳转WAP手机网站(两种方式)
Aug 04 #Javascript
常用的Javascript数据验证插件
Aug 04 #Javascript
You might like
PHP遍历二维数组的代码
2011/04/22 PHP
PHP获取文件绝对路径的代码(上一级目录)
2011/05/29 PHP
详解PHP内置访问资源的超时时间 time_out file_get_contents read_file
2013/06/03 PHP
PHP 实现手机端APP支付宝支付功能
2018/06/07 PHP
php实现简单的守护进程创建、开启与关闭操作
2019/08/13 PHP
laravel框架使用FormRequest进行表单验证,验证异常返回JSON操作示例
2020/02/18 PHP
改进:论坛UBB代码自动插入方式
2006/12/22 Javascript
jQuery 学习6 操纵元素显示效果的函数
2010/02/07 Javascript
使用基于jquery的gamequery插件做JS乒乓球游戏
2011/07/31 Javascript
用JQuery实现全选与取消的两种简单方法
2014/02/22 Javascript
JavaScript多并发问题如何处理
2015/10/28 Javascript
深入理解React中es6创建组件this的方法
2016/08/29 Javascript
vue2.0实现倒计时的插件(时间戳 刷新 跳转 都不影响)
2017/03/30 Javascript
nodejs入门教程六:express模块用法示例
2017/04/24 NodeJs
浅谈 Vue v-model指令的实现原理
2017/06/08 Javascript
原生js中ajax访问的实例详解
2017/09/19 Javascript
基于jQuery实现的设置文本区域的光标位置
2018/06/15 jQuery
6行代码实现微信小程序页面返回顶部效果
2018/12/28 Javascript
Django模板继承 extend标签实例代码详解
2019/05/16 Javascript
Vue.js实现备忘录功能
2019/06/26 Javascript
VUE解决 v-html不能触发点击事件的问题
2019/10/28 Javascript
JS数组方法reverse()用法实例分析
2020/01/18 Javascript
Python计算一个文件里字数的方法
2015/06/15 Python
Python3实现的画图及加载图片动画效果示例
2018/01/19 Python
python2和python3的输入和输出区别介绍
2018/11/20 Python
Python基于datetime或time模块分别获取当前时间戳的方法实例
2019/02/19 Python
numpy下的flatten()函数用法详解
2019/05/27 Python
Python 实现try重新执行
2019/12/21 Python
python分别打包出32位和64位应用程序
2020/02/18 Python
美国最大的农村生活方式零售店:Tractor Supply Company(TSC)
2017/05/15 全球购物
世界上最大的二手相机店:KEN
2017/05/17 全球购物
日本卡普空电视游戏软件公司官方购物网站:e-CAPCOM
2018/07/17 全球购物
教师党的群众路线学习心得体会
2014/11/04 职场文书
原来实习报告是这样写的呀!
2019/07/03 职场文书
创业计划书之o2o水果店
2019/08/30 职场文书
python 网络编程要点总结
2021/06/18 Python