jquery-4 完整表单验证实例

一、总结

一句话总结:在form的jquery对象中返回false即可终止表单提交。

1、验证的显示错误消息如何布局?

开始时隐藏,出现错误后显示

 10         .error{
11 color:#f00;
12 font-weight: bold;
13 display: none;
14 }
 54     if(val.length<6){
55 $(this).data({'s':0});
56 $(this).next().show();
57 }else{

2、如何设置限制表单最多输入11位?

用maxlength属性

 42             <input type="text" class="auth" name='phone' maxlength='11'>

3、如何给元素添加data方法来给元素添加属性?

不影响其它属性的属性

 58         $(this).data({'s':1});

语法规则是json

4、选择input里面name属性为email的?

 88 $('input[name=email]').blur(function(){

5、jquery中如何用this属性?

和在js中一模一样

 88 $('input[name=email]').blur(function(){
89 val=this.value;
 88 $('input[name=email]').blur(function(){
89 val=this.value;
90
91 if(!val.match(/^\w+@\w+\.\w+$/i)){
92 $(this).data({'s':0});
93 $(this).next().show();
94 }else{
95 $(this).data({'s':1});
96 $(this).next().hide();
97 }
98 });

6、如何验证邮箱(什么方法,正则怎么写)?

string的match方法

91     if(!val.match(/^\w+@\w+\.\w+$/i)){

7、如何取到input:password的下一个span?

jquery中next()方法

105         $(this).next().show();

8、文本框失去焦点事件(jquery)?

blur方法

 75 $('input[name=repassword]').blur(function(){

9、如何触发所有class为auth的失去焦点方法?

blue方法

112 $('form').submit(function(){
113 $('.auth').blur();

10、如何在表单提交的时候验证所有表单控件的失去焦点方法?

在form的submit方法中执行blur方法

112 $('form').submit(function(){
113 $('.auth').blur();

11、如何在表单提交的时候验证所有表单控件都验证通过?

给用data()方法给所有的表单控件添加一个属性,属性值为0为1表示是否就绪,最后求所有控件的属性和,结果为控件数说明所有的表单都验证通过

103     if(!val.match(/^139\d{8}$/)){
104 $(this).data({'s':0});
105 $(this).next().show();
106 }else{
115     tot=0;
116
117 $('.auth').each(function(){
118 tot+=$(this).data('s');
119 });

12、如何终止表单的提交?

在form的jquery对象的submit()方法中返回false即可

112 $('form').submit(function(){
121     if(tot!=5){
122 return false;
123 }

13、如何遍历出jquery选择器选择出来的jquery对象?

each方法

117     $('.auth').each(function(){
118 tot+=$(this).data('s');
119 });

14、jquery中控件的显示隐藏用什么方法?

show()和hide()方法

105         $(this).next().show();
108         $(this).next().hide();
 

二、完整表单验证实例

表单验证完整实例

 <!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>index</title>
<style>
*{
font-family: 微软雅黑;
}
.error{
color:#f00;
font-weight: bold;
display: none;
}
</style>
<script src="jquery.js"></script>
</head>
<body>
<form action="reg.php" method='get'>
<p>用户名:</p>
<p>
<input type="text" name='username' class='auth'>
<span class='error'>用户名长度至少6位!</span>
</p>
<p>密码:</p>
<p>
<input type="text" name="password" class='auth'>
<span class='error'>密码长度至少8位!</span>
</p>
<p>确认密码:</p>
<p>
<input type="text" name='repassword' class='auth'>
<span class='error'>两次密码不一致!</span>
</p>
<p>邮箱:</p>
<p>
<input type="text" class="auth" name='email'>
<span class='error'>邮箱格式不正确!</span>
</p>
<p>手机号码:</p>
<p>
<input type="text" class="auth" name='phone' maxlength='11'>
<span class='error'>手机号码不正确!</span>
</p>
<p><input type="submit" value="Ok"></p>
</form>
</body>
<script>
// 表单验证 $('input[name=username]').blur(function(){
val=this.value; if(val.length<6){
$(this).data({'s':0});
$(this).next().show();
}else{
$(this).data({'s':});
$(this).next().hide();
}
}); $('input[name=password]').blur(function(){
val=this.value; if(val.length<8){
$(this).data({'s':0});
$(this).next().show();
}else{
$(this).data({'s':1});
$(this).next().hide();
}
}); $('input[name=repassword]').blur(function(){
val1=$('input[name=password]').val();
val2=this.value; if(val1!=val2){
$(this).data({'s':0});
$(this).next().show();
}else{
$(this).data({'s':1});
$(this).next().hide();
}
}); $('input[name=email]').blur(function(){
val=this.value; if(!val.match(/^\w+@\w+\.\w+$/i)){
$(this).data({'s':});
$(this).next().show();
}else{
$(this).data({'s':1});
$(this).next().hide();
}
}); $('input[name=phone]').blur(function(){
val=this.value; if(!val.match(/^139\d{8}$/)){
$(this).data({'s':0});
$(this).next().show();
}else{
$(this).data({'s':1});
$(this).next().hide();
}
}); $('form').submit(function(){
$('.auth').blur(); tot=0; $('.auth').each(function(){
tot+=$(this).data('s');
}); if(tot!=5){
return false;
}
});
</script>
</html>
 
 

jquery-4 完整表单验证实例的更多相关文章

  1. jQuery Validation Engine 表单验证

    功能强大的 jQuery 表单验证插件,适用于日常的 E-mail.电话号码.网址等验证及 Ajax 验证,除自身拥有丰富的验证规则外,还可以添加自定义的验证规则. 兼容 IE 6+, Chrome, ...

  2. Jquery.validate.js表单验证插件的使用

    作为一个网站web开发人员,以前居然不知道还有表单验证这样好呀的插件,还在一行行写表单验证,真是后悔没能早点知道他们的存在. 最近公司不忙,自己学习一些东西的时候,发现了validation的一个实例 ...

  3. 基于Jquery Validate 的表单验证

    基于Jquery Validate 的表单验证 jquery.validate.js是jquery下的一个验证插件,运用此插件我们可以很便捷的对表单元素进行格式验证. 在讲述基于Jquery Vali ...

  4. jQuery-easyui和validate表单验证实例

    jQuery EasyUI 表单 - 表单验证插件validatebox 使用时需要向页面引入两个css文件如下: <link rel="stylesheet" href=& ...

  5. 基于jQuery的Validate表单验证

    表单验证可以说在前端开发工作中是无处不在的~ 有数据,有登录,有表单, 都需要前端验证~~  而我工作中用到最多的就是基于基于jQuery的Validate表单验证~  就向下面这样~ 因为今天有个朋 ...

  6. jquery.validation.js 表单验证

    jquery.validation.js 表单验证   官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation jQuer ...

  7. 异步提交form的时候利用jQuery validate实现表单验证

    异步提交form的时候利用jQuery validate实现表单验证相信很多人都用过jquery validate插件,非常好用,并且可以通过下面的语句来自定义验证规则    // 电话号码验证    ...

  8. Bootstrap+PHP表单验证实例

    简单实用的Bootstrap+PHP表单验证实例,非常适合初学者及js不熟悉者,还有ajax远程验证 js验证表单 1 $(document).ready(function() { 2 $('#def ...

  9. 基于Bootstrap+jQuery.validate Form表单验证实践

    基于Bootstrap jQuery.validate Form表单验证实践 项目结构 :     github 上源码地址:https://github.com/starzou/front-end- ...

随机推荐

  1. Wiz+360云盘,让你的知识库井井有条

    用了wiz快两年了,一些同事看到我在找资料时打开wiz,总会好奇的问这是什么,想到还有很多同仁在用文件夹管理知识库,于是想分享一下我的管理方法.(PS:鄙人愚见,如有高见,望指教) Wiz为知笔记下载 ...

  2. 关于Webpack详述系列文章 (第四篇)

    1. webpack基本概念 Entry:入口,Webpack 执行构建的第一步将从 Entry 开始,可抽象成输入.Module:模块,在 Webpack 里一切皆模块,一个模块对应着一个文件.We ...

  3. Mybatis批量插入,是否能够返回id列表

    第1次代码 void batchAdd(List<Photo> list); <insert id="batchAdd" parameterType=" ...

  4. 洛谷 P1916 小书童——蚂蚁大战

    P1916 小书童——蚂蚁大战 题目背景 小A在你的帮助下,开始“刷题”,他在小书童里发现了一款叫“蚂蚁大战”(又称蛋糕保卫战)的游戏.(你懂得) 题目描述 游戏中会出现n只蚂蚁,分别有a1,a2…… ...

  5. 8.spring-boot配置log4j

    转自:https://www.cnblogs.com/qixing/p/7763582.html <dependency> <groupId>org.springframewo ...

  6. C#中数组与ArrayList的简单使用

    1. 多维数组 2. 锯齿数组 3. 数组的常用操作 4. ArrayList 1. 多维数组 多维数组:行数和列数在定义时已确定 string[,] arr = new string[2, 3]; ...

  7. 1.14 Python基础知识 - 文件操作

    应用程序往往需要从磁盘文件中读取数据,或者把数据存储到磁盘中文件里,以持久的保存数据.文件可以看作是数据的集合,文件的输入与输出通过流来实现.流有5种基本的操作:打开.读取.写入.改变当前位置和关闭. ...

  8. 【例题 7-9 UVA-1601】The Morning after Halloween

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 对于没有出现的,当成0节点就好. 所以总是认为有3个人需要走到各自的终点. 将平面图转成点边图.这样比较好枚举. (二维变成一维,模 ...

  9. 【2017中国大学生程序设计竞赛 - 网络选拔赛 && hdu 6154】CaoHaha's staff

    [链接]点击打开链接 [题意] 给你一个面积,让你求围成这个面积最少需要几条边,其中边的连线只能是在坐标轴上边长为1的的线或者是两个边长为1 的线的对角线. [题解] 找规律题 考虑s[i]表示i条边 ...

  10. 微信支付v2开发(8) 维权通知

    本文介绍微信支付中如何获得维权通知. 一.维权通知URL 在 微信支付开发(1) 微信支付URL配置 已提到,维权通知URL为 http://www.doucube.com/wxpay/rights. ...