jQuery表单验证功能实例


Posted in Javascript onAugust 28, 2015

本文实例讲述了jQuery表单验证功能。分享给大家供大家参考。具体如下:

这里使用jquery实现的表单验证效果,以Ajax方式验证你的表单是否填写正确,如果验证不通过,会将表单元素背景变成红色,并给出提示信息,简单实用,jquery表单验证功能已经有很多了,本款表单验证特效看上去更简单,不懂Ajax的朋友,或许直接套用即可实现无刷新表单验证功能。

运行效果截图如下:

jQuery表单验证功能实例

在线演示地址如下:

具体代码如下:

<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>jQuery表单验证</title>
<style type="text/css">
body, input, textarea {
 font-size:12px;
 line-height:18px;
 font-family:Verdana, Geneva, sans-serif;
}
input {width:200px;}
.submit {width:120px;}
#error {
 color:red;
 font-size:10px;
 display:none;
}
.needsfilled {
 background:red;
 color:white;
}
</style>
<script type="text/javascript" src="jquery-1.6.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
 // Place ID's of all required fields here.
 required = ["name", "email", "message"];
 // If using an ID other than #email or #error then replace it here
 email = $("#email");
 errornotice = $("#error");
 // The text to show up within a field when it is incorrect
 emptyerror = "Please fill out this field.";
 emailerror = "Please enter a valid e-mail.";
 $("#theform").submit(function(){ 
  //Validate required fields
  for (i=0;i<required.length;i++) {
   var input = $('#'+required[i]);
   if ((input.val() == "") || (input.val() == emptyerror)) {
    input.addClass("needsfilled");
    input.val(emptyerror);
    errornotice.fadeIn(750);
   } else {
    input.removeClass("needsfilled");
   }
  }
  // Validate the e-mail.
  if (!/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(email.val())) {
   email.addClass("needsfilled");
   email.val(emailerror);
  }
  //if any inputs on the page have the class 'needsfilled' the form will not submit
  if ($(":input").hasClass("needsfilled")) {
   return false;
  } else {
   errornotice.hide();
   return true;
  }
 });
 // Clears any fields in the form when the user clicks on them
 $(":input").focus(function(){  
  if ($(this).hasClass("needsfilled") ) {
   $(this).val("");
   $(this).removeClass("needsfilled");
  }
 });
}); 
</script>
</head>
<body>
<form action="mail.php" id="theform" name="theform" method="post">
 <p><label for="name">Name</label><br /><input id="name" type="text" value="" name="name" /></p>
 <p><label for="email">E-mail</label><br /><input id="email" type="text" value="" name="email" /></p>
 <p><label for="message">Message</label><br /><textarea id="message" rows="7" cols="30" name="message"></textarea></p>
 <p><input class="submit" type="submit" name="submit" value="Submit Form" /></p>
 <p id="error">表单中有错误信息!</p>
</form>
</body>
</html>

希望本文所述对大家的jquery程序设计有所帮助。

Javascript 相关文章推荐
支持ie与FireFox的剪切板操作代码
Sep 28 Javascript
JavaScript 构造函数 面相对象学习必备知识
Jun 09 Javascript
JQuery的Ajax中Post方法传递中文出现乱码的解决方法
Oct 21 Javascript
javascript中日期函数new Date()的浏览器兼容性问题
Sep 05 Javascript
学习javascript面向对象 理解javascript对象
Jan 04 Javascript
jQuery prototype冲突的2种解决方法(附demo示例下载)
Jan 21 Javascript
第一章之初识Bootstrap
Apr 25 Javascript
JavaScript中输出信息的方法(信息确认框-提示输入框-文档流输出)
Jun 12 Javascript
AngularJS中run方法的巧妙运用
Jan 04 Javascript
jQuery 防止相同的事件快速重复触发方法
Feb 08 jQuery
vue2.0中set添加属性后视图不能更新的解决办法
Feb 22 Javascript
vue-router两种模式区别及使用注意事项详解
Aug 01 Javascript
jquery实现带缩略图的可定制高度画廊效果(5种)
Aug 28 #Javascript
通过XMLHttpRequest和jQuery实现ajax的几种方式
Aug 28 #Javascript
jQuery实现平滑滚动的标签分栏切换效果
Aug 28 #Javascript
jquery图片滚动放大代码分享(2)
Aug 28 #Javascript
浅谈JavaScript中的string拥有方法的原因
Aug 28 #Javascript
zepto中使用swipe.js制作轮播图附swipeUp,swipeDown不起效果问题
Aug 27 #Javascript
jquery实现左右滑动菜单效果代码
Aug 27 #Javascript
You might like
PHP跳转页面的几种实现方法详解
2013/06/08 PHP
JavaScript 学习笔记之一jQuery写法图片等比缩放以及预加载
2012/06/28 Javascript
JSONP 跨域共享信息
2012/08/16 Javascript
JavaScript中的类(Class)详细介绍
2014/12/30 Javascript
js实现TAB切换对应不同颜色的代码
2015/08/31 Javascript
探寻JavaScript中this指针指向
2016/04/23 Javascript
JS结合bootstrap实现基本的增删改查功能
2016/07/22 Javascript
jQuery实现表格行和列的动态添加与删除方法【测试可用】
2016/08/01 Javascript
详解Angular 4.x NgTemplateOutlet
2017/05/24 Javascript
zTree树形插件异步加载方法详解
2017/06/14 Javascript
jQuery dateRangePicker插件使用方法详解
2017/07/28 jQuery
vue 2.x 中axios 封装的get 和post方法
2018/02/28 Javascript
在vue中多次调用同一个定义全局变量的实例
2018/09/25 Javascript
Vuex modules模式下mapState/mapMutations的操作实例
2019/10/17 Javascript
vue element 中的table动态渲染实现(动态表头)
2019/11/21 Javascript
vue实现简单跑马灯效果
2020/05/25 Javascript
微信小程序实现单个或多个倒计时功能
2020/11/01 Javascript
详解vue中在父组件点击按钮触发子组件的事件
2020/11/13 Javascript
[49:42]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第一局
2016/03/04 DOTA
python实现批量获取指定文件夹下的所有文件的厂商信息
2014/09/28 Python
Tensorflow之Saver的用法详解
2018/04/23 Python
Python使用Pickle库实现读写序列操作示例
2018/06/15 Python
彻底理解Python中的yield关键字
2019/04/01 Python
PyCharm中代码字体大小调整方法
2019/07/29 Python
基于logstash实现日志文件同步elasticsearch
2020/08/06 Python
使用Python解析Chrome浏览器书签的示例
2020/11/13 Python
Melijoe英国官网:法国儿童时尚网站
2016/11/18 全球购物
Mankind西班牙男士护肤品网站:购买皮肤护理、护发和剃须
2017/04/27 全球购物
英国最大的在线时尚眼镜店:Eyewearbrands
2019/03/12 全球购物
英国绿色商店:Natural Collection
2019/05/03 全球购物
北承题目(C++)
2012/05/16 面试题
ORACLE第二个十问
2013/12/14 面试题
农民工工资支付承诺函
2014/03/31 职场文书
员工三分钟演讲稿
2014/08/19 职场文书
小学教师节活动总结
2015/03/20 职场文书
pytorch查看网络参数显存占用量等操作
2021/05/12 Python