jquery实现一个简单的表单验证实例


Posted in Javascript onMarch 30, 2016

表单验证在网站开发过程中经常遇到,我们可以使用服务器端语言验证,也可以使用客户端语言来验证。本文章向大家介绍jquery客户端验证表单的一个简单实例。实例仅作参考。

<body>

<form method="post" action="">
  <div class="int">
    <label for="username">用户名:</label>
    <!-- 为每个需要的元素添加required -->
    <input type="text" id="username" class="required" />
  </div>
  <div class="int">
    <label for="email">邮箱:</label>
    <input type="text" id="email" class="required" />
  </div>
  <div class="int">
    <label for="personinfo">个人资料:</label>
    <input type="text" id="personinfo" />
  </div>
  <div class="sub">
    <input type="submit" value="提交" id="send"/><input type="reset" id="res"/>
  </div>
</form>

</body>
<script src="/Public/js/jquery-1.7.1.min.js"></script>
<script type="text/javascript">
//<![CDATA[
$(function(){
    /*
    *思路大概是先为每一个required添加必填的标记,用each()方法来实现。
    *在each()方法中先是创建一个元素。然后通过append()方法将创建的元素加入到父元素后面。
    *这里面的this用的很精髓,每一次的this都对应着相应的input元素,然后获取相应的父元素。
    *然后为input元素添加失去焦点事件。然后进行用户名、邮件的验证。
    *这里用了一个判断is(),如果是用户名,做相应的处理,如果是邮件做相应的验证。
    *在jQuery框架中,也可以适当的穿插一写原汁原味的javascript代码。比如验证用户名中就有this.value,和this.value.length。对内容进行判断。
    *然后进行的是邮件的验证,貌似用到了正则表达式。
    *然后为input元素添加keyup事件与focus事件。就是在keyup时也要做一下验证,调用blur事件就行了。用triggerHandler()触发器,触发相应的事件。
    *最后提交表单时做统一验证
    *做好整体与细节的处理
    */
    //如果是必填的,则加红星标识.
    $("form :input.required").each(function(){
      var $required = $("<strong class='high'> *</strong>"); //创建元素
      $(this).parent().append($required); //然后将它追加到文档中
    });
     //文本框失去焦点后
    $('form :input').blur(function(){
       var $parent = $(this).parent();
       $parent.find(".formtips").remove();
       //验证用户名
       if( $(this).is('#username') ){
          if( this.value=="" || this.value.length < 6 ){
            var errorMsg = '请输入至少6位的用户名.';
            $parent.append('<span class="formtips onError">'+errorMsg+'</span>');
          }else{
            var okMsg = '输入正确.';
            $parent.append('<span class="formtips onSuccess">'+okMsg+'</span>');
          }
       }
       //验证邮件
       if( $(this).is('#email') ){
        if( this.value=="" || ( this.value!="" && !/.+@.+\.[a-zA-Z]{2,4}$/.test(this.value) ) ){
           var errorMsg = '请输入正确的E-Mail地址.';
           $parent.append('<span class="formtips onError">'+errorMsg+'</span>');
        }else{
           var okMsg = '输入正确.';
           $parent.append('<span class="formtips onSuccess">'+okMsg+'</span>');
        }
       }
    }).keyup(function(){
      $(this).triggerHandler("blur");
    }).focus(function(){
       $(this).triggerHandler("blur");
    });//end blur

    
    //提交,最终验证。
     $('#send').click(function(){
        $("form :input.required").trigger('blur');
        var numError = $('form .onError').length;
        if(numError){
          return false;
        } 
        alert("注册成功,密码已发到你的邮箱,请查收.");
     });

    //重置
     $('#res').click(function(){
        $(".formtips").remove(); 
     });
})
//]]>
</script>

以上这篇jquery实现一个简单的表单验证实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
广告代码静态化js通用函数
May 09 Javascript
js option删除代码集合
Nov 12 Javascript
jQuery ajax dataType值为text json探索分享
Sep 23 Javascript
JS的参数传递示例介绍
Feb 08 Javascript
javascript学习笔记之函数定义
Jun 25 Javascript
javascript字符串替换函数如何一次性全部替换掉
Oct 30 Javascript
Bootstrap fileinput组件封装及使用详解
Mar 10 Javascript
使用vue-router完成简单导航功能【推荐】
Jun 28 Javascript
vue实现组件之间传值功能示例
Jul 13 Javascript
微信小程序出现wx.getLocation再次授权问题的解决方法分析
Jan 16 Javascript
小程序如何在不同设备上自适应生成海报的实现方法
Aug 20 Javascript
Ant design vue中的联动选择取消操作
Oct 31 Javascript
js实现密码强度检测【附示例】
Mar 30 #Javascript
原生javascript实现的一个简单动画效果
Mar 30 #Javascript
纯js代码制作的网页时钟特效【附实例】
Mar 30 #Javascript
JS 实现倒计时数字时钟效果【附实例代码】
Mar 30 #Javascript
详解JavaScript for循环中发送AJAX请求问题
Jun 23 #Javascript
Jquery判断form表单数据是否变化
Mar 30 #Javascript
基于javascript实现tab选项卡切换特效调试笔记
Mar 30 #Javascript
You might like
星际原理概述
2020/03/04 星际争霸
php实现基于pdo的事务处理方法示例
2017/07/21 PHP
PHP环形链表实现方法示例
2017/09/15 PHP
PHP中__set()实例用法和基础讲解
2019/07/23 PHP
Prototype ObjectRange对象学习
2009/07/19 Javascript
Javascript 去除数组的重复元素
2010/05/04 Javascript
jQuery Tools tab使用介绍
2012/07/14 Javascript
javascript常见用法总结
2014/05/22 Javascript
JS动态修改图片的URL(src)的方法
2015/04/01 Javascript
详解javascript实现瀑布流绝对式布局
2016/01/29 Javascript
如何解决手机浏览器页面点击不跳转浏览器双击放大网页
2016/07/01 Javascript
JS中mouseup事件丢失的原因与解决办法
2017/06/14 Javascript
详解vue 数据传递的方法
2018/04/19 Javascript
JSON基本语法及与JavaScript的异同实例分析
2019/01/04 Javascript
基于vue-cli3和element实现登陆页面
2019/11/13 Javascript
Js参数RSA加密传输之jsencrypt.js的使用
2020/02/07 Javascript
JS实现无限轮播无倒退效果
2020/09/21 Javascript
微信小程序canvas动态时钟
2020/10/22 Javascript
Python做文本按行去重的实现方法
2016/10/19 Python
python加密解密库cryptography使用openSSL生成的密匙加密解密
2020/02/11 Python
找Python安装目录,设置环境路径以及在命令行运行python脚本实例
2020/03/09 Python
python爬虫多次请求超时的几种重试方法(6种)
2020/12/01 Python
html5中去掉input type date默认样式的方法
2018/09/06 HTML / CSS
html5定位并在百度地图上显示的示例
2014/04/27 HTML / CSS
HTML5 canvas 瀑布流文字效果的示例代码
2018/01/31 HTML / CSS
回馈慈善的设计师太阳镜:DIFF eyewear
2019/10/17 全球购物
俄罗斯苹果优质经销商商店:iPort
2020/05/27 全球购物
汽车制造与装配专业自荐信范文
2014/01/02 职场文书
学校消防演习方案
2014/02/19 职场文书
房产继承公证书
2014/04/09 职场文书
超市创意活动方案
2014/08/15 职场文书
运动会演讲稿200字
2014/08/25 职场文书
解放思想大讨论活动总结
2015/05/09 职场文书
高一地理教学工作总结
2015/08/12 职场文书
详解Python小数据池和代码块缓存机制
2021/04/07 Python
Java实现聊天机器人完善版
2021/07/04 Java/Android