基于jquery实现即时检查格式是否正确的表单


Posted in Javascript onMay 06, 2016

现在很多网站的注册模块都可以实现即时检查格式是否正确,这样极大的增强了用户体验,对开发非常有利。

下面的代码是利用jquery实现了对一个表单字段格式即时检查(包括字段长度、邮箱格式),同时在提交时,再次出发检查事件。

注意这个检查是keyup和focus上为主,利用这两个事件来触发blur(失去焦点)事件。

<html>
<head>
 <meta charset="utf-8" />
 <title></title>
 <link href="css/style.css" rel="stylesheet" type="text/css" />
 <script src="jquery-1.3.2.min.js"></script>
 <script>
  $(function () {



//为每个必填字段后面加上*
   $("form :input.required").each(function () {
    var $required = $("<strong class='high'>*</strong>");
    $(this).parent().append($required);
   });




//textbox失去焦点事件
   $("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");//keyup和focus利用triggerHandler来触发blur事件
   }).focus(function () {
    $(this).triggerHandler("blur");
   });
   $("#send").click(function () {//提交按钮事件
    $("form .required:input").trigger('blur');
    var numError = $('form .onError').length;
    if(numError)
    {
     return false;
    }
    alert("注册成功,密码已发到你的邮箱,请查收");
   });
  });

 </script>
</head>
<body>
 <form method="post" action="">
  <div class="int">
   <label for="username">用户名</label>
   <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>
</html>

更多内容点击:jquery表单验证大全

以上就是本文的全部内容,希望对大家学习jquery程序设计有所帮助。

Javascript 相关文章推荐
javascript 打印页面代码
Mar 24 Javascript
客户端js判断文件类型和文件大小即限制上传大小
Nov 20 Javascript
node.js中的buffer.length方法使用说明
Dec 14 Javascript
用模版生成HTML的的框架jquery.tmpl使用详解
Jan 07 Javascript
JavaScript使用DeviceOne开发实战(四)仿优酷视频应用
Dec 02 Javascript
ajax接收后台数据在html页面显示
Feb 19 Javascript
详解AngularJs ui-router 路由的简单介绍
Apr 26 Javascript
webpack打包js文件及部署的实现方法
Dec 18 Javascript
利用JS实现一个同Excel表现的智能填充算法
Aug 13 Javascript
解决vue 打包发布去#和页面空白的问题
Sep 04 Javascript
小程序红包雨的实现示例
Feb 19 Javascript
微信小程序仿通讯录功能
Apr 09 Javascript
jquery 全选、全不选、反选效果的实现代码【推荐】
May 05 #Javascript
jquery实现全选和全不选功能效果的实现代码【推荐】
May 05 #Javascript
jquery实现全选功能效果的实现代码
May 05 #Javascript
ichart.js绘制虚线、平均分虚线效果的实现代码
May 05 #Javascript
animate 实现滑动切换效果【实例代码】
May 05 #Javascript
JavaScript中各种引用类型的常用操作方法小结
May 05 #Javascript
Sea.JS知识总结
May 05 #Javascript
You might like
php获取新浪微博数据API实例
2013/11/12 PHP
php中curl和soap方式请求服务超时问题的解决
2018/06/11 PHP
查找iframe里元素的方法可传参
2013/09/11 Javascript
基于JQuery的列表拖动排序实现代码
2013/10/01 Javascript
网页中表单按回车就自动提交的问题的解决方案
2014/11/03 Javascript
JavaScript实现DIV层拖动及动态增加新层的方法
2015/05/12 Javascript
ajax读取数据后使用jqchart显示图表的方法
2015/06/10 Javascript
jQuery进行组件开发完整实例
2015/12/15 Javascript
js一维数组、多维数组和对象的混合使用方法
2016/04/03 Javascript
Bootstrap教程JS插件滚动监听学习笔记分享
2016/05/18 Javascript
浅谈js数据类型判断与数组判断
2016/08/29 Javascript
jQuery 检查某个元素在页面上是否存在实例代码
2016/10/27 Javascript
微信小程序实现的一键拨号功能示例
2019/04/24 Javascript
js获取 gif 的帧数的代码实例
2019/09/10 Javascript
[02:30]DOTA2放量测试专访海涛:呼吁保护新手玩家
2013/08/26 DOTA
python生成指定长度的随机数密码
2014/01/23 Python
Python 字典(Dictionary)操作详解
2014/03/11 Python
Python中的列表知识点汇总
2015/04/14 Python
简单介绍Python中的几种数据类型
2016/01/02 Python
Python实现PS图像调整黑白效果示例
2018/01/25 Python
python去除拼音声调字母,替换为字母的方法
2018/11/28 Python
Django密码存储策略分析
2020/01/09 Python
python设置代理和添加镜像源的方法
2020/02/14 Python
python中delattr删除对象方法的代码分析
2020/12/15 Python
使用OpenCV实现人脸图像卡通化的示例代码
2021/01/15 Python
护理自我鉴定范文
2013/10/06 职场文书
《蓝色的树叶》教学反思
2014/02/24 职场文书
产品质量承诺书范文
2014/03/27 职场文书
商场主管竞聘书
2014/03/31 职场文书
中学生励志演讲稿
2014/04/26 职场文书
做一个有道德的人演讲稿
2014/05/14 职场文书
2014年共青团工作总结
2014/12/10 职场文书
2015毕业实习推荐信
2015/03/23 职场文书
Python 高级库15 个让新手爱不释手(推荐)
2021/05/15 Python
MySQL笔记 —SQL运算符
2022/01/18 MySQL
详解Python+OpenCV绘制灰度直方图
2022/03/22 Python