bootstrap html5 表单验证,基于Bootstrap+jQuery.validate实现表单验证
这大概是一种惯例,学习前台后台最开始接触的业务都是用户注册和登录。现在社会坚持以人为本的理念,在网站开发过程同样如此。User是我们面对较多的对象,也是较核心的对象。最开始的用户注册和登陆这块,也就尤为重要。
用户注册和登录其实往往比我们想象的难。就比如表单校验,里面涵盖的内容其实挺多,就前台而言,你需要了解:
1.正则表达式的基本了解
其实正则并不难,并且在学会后能带给你极大的成就感,享受那种事半功倍的效果吧。
2.ajax异步请求
在验证用户名是否存在、用户登录时账号或者密码错误时给出相应的提示。
3.一些方便的验证库,比如jQuery.validate
正因为如此普遍的需求和一定的复杂性,bootstrap表单和jQuery.validate表单校验等一些优秀的类库专为人们解决UI、表单校验问题。
下面就是我用bootstrap+jQuery.validate做的界面:
一、bootstrap3基本表单和水平表单
1、基本表单
基本的表单结构是 Bootstrap 自带的,下面列出了创建基本表单的步骤:
向父元素
添加 role="form"。
把标签和控件放在一个带有 class .form-group 的
向所有的文本元素 、 和 添加 class .form-control。
名称
placeholder="请输入名称">
效果如下:
2、水平表单
在了解水平表单之间,我们应该对bootstrap的网格系统有所了解。
Bootstrap 包含了一个响应式的、移动设备优先的、不固定的网格系统,可以随着设备或视口大小的增加而适当地扩展到 12 列。它包含了用于简单的布局选项的预定义类,也包含了用于生成更多语义布局的功能强大的混合类。
响应式网格系统随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多12列,也就是说它是以百分比定义宽度的。
水平表单与其他表单不仅标记的数量上不同,而且表单的呈现形式也不同。如需创建一个水平布局的表单,请按下面的几个步骤进行:
步骤1:向父
元素添加 class .form-horizontal。
步骤2:把标签和控件放在一个带有 class .form-group 的
步骤3:向标签添加 class .control-label。
名字
placeholder="请输入名字">
效果如下:
二、jQuery.validate 自定义校验方法
1、自定义校验方法
// 手机号码验证
jQuery.validator.addMethod("isPhone", function(value, element) {
var length = value.length;
return this.optional(element) || (length == 11 && /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/.test(value));
}, "请正确填写您的手机号码。");
2、调用自定义校验
rules : {
phone : {
required : true,
isPhone : true
}
}
3、自定义错误显示
三、register.html
注册
#register-form{
border: 1px solid rgb(197, 197, 197);
width: 1000px;
margin: auto;
border-image: none;
padding: 30px;
border-radius: 3px;
}
用户注册
用户名:
密码:
确认密码:
E-Mail:
手机号码:
固定电话:
家庭住址:
注册
重置
四、form.js
$(document).ready(function() {
// 手机号码验证
jQuery.validator.addMethod("isPhone", function(value, element) {
var length = value.length;
return this.optional(element) || (length == 11 && /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/.test(value));
}, "请正确填写您的手机号码。");
// 电话号码验证
jQuery.validator.addMethod("isTel", function(value, element) {
var tel = /^(\d{3,4}-)?\d{7,8}$/g; // 区号-3、4位 号码-7、8位
return this.optional(element) || (tel.test(value));
}, "请正确填写您的电话号码。");
// 匹配密码,以字母开头,长度在6-12之间,必须包含数字和特殊字符。
jQuery.validator.addMethod("isPwd", function(value, element) {
var str = value;
if (str.length < 6 || str.length > 18)
return false;
if (!/^[a-zA-Z]/.test(str))
return false;
if (!/[0-9]/.test(str))
return fasle;
return this.optional(element) || /[^A-Za-z0-9]/.test(str);
}, "以字母开头,长度在6-12之间,必须包含数字和特殊字符。");
$("#register-form").validate({
errorElement : 'span',
errorClass : 'help-block',
rules : {
firstname : "required",
email : {
required : true,
email : true
},
password : {
required : true,
isPwd : true
},
confirm_password : {
required : true,
isPwd : true,
equalTo : "#password"
},
phone : {
required : true,
isPhone : true
},
tel : {
isTel : true
},
address : {
minlength : 10
}
},
messages : {
firstname : "请输入姓名",
email : {
required : "请输入Email地址",
email : "请输入正确的email地址"
},
password : {
required : "请输入密码",
minlength : jQuery.format("密码不能小于{0}个字 符")
},
confirm_password : {
required : "请输入确认密码",
minlength : "确认密码不能小于5个字符",
equalTo : "两次输入密码不一致不一致"
},
phone : {
required : "请输入手机号码"
},
tel : {
required : "请输入座机号码"
},
address : {
required : "请输入家庭地址",
minlength : jQuery.format("家庭地址不能少于{0}个字符")
}
},
//自定义错误消息放到哪里
errorPlacement : function(error, element) {
element.next().remove();//删除显示图标
element.after('');
element.closest('.form-group').append(error);//显示错误消息提示
},
//给未通过验证的元素进行处理
highlight : function(element) {
$(element).closest('.form-group').addClass('has-error has-feedback');
},
//验证通过的处理
success : function(label) {
var el=label.closest('.form-group').find("input");
el.next().remove();//与errorPlacement相似
el.after('');
label.closest('.form-group').removeClass('has-error').addClass("has-feedback has-success");
label.remove();
},
});
});
如果大家还想深入学习,可以点击这里进行学习,再为大家附3个精彩的专题:
以上就是Bootstrap+jQuery.validate实现表单验证相关知识介绍,希望大家可以熟练掌握,设计自己的表单验证。
bootstrap html5 表单验证,基于Bootstrap+jQuery.validate实现表单验证相关推荐
- jquery表单ajax json数据,jquery序列化form表单使用ajax提交后处理返回的json数据
1.返回json字符串: /** 将一个字符串输出到浏览器 */ protected void writeJson(String json) { PrintWriter pw = null; try ...
- 使用 jQuery Validate 进行表单验证
jQuery Validate简介 jQuery Validate 插件提供了强大的表单验证功能,能够让客户端表单验证变得更简单,同时它还提供了大量的可定制化选项,以满足应用程序的各种需求.该插件捆绑 ...
- 抓取html表单验证码,如何在jquery中利用表单获取短信验证码
如何在jquery中利用表单获取短信验证码 发布时间:2021-02-18 15:42:54 来源:亿速云 阅读:88 作者:Leah 这期内容当中小编将会给大家带来有关如何在jquery中利用表单获 ...
- jQuery验证控件jquery.validate.js使用说明+中文API
官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation jQuery plugin: Validation 使用说明 转载 ...
- [转]MVC+JQuery validate实现用户输入验证
本文转自:http://www.cnblogs.com/ahui/archive/2010/10/08/1845677.html MVC服务器端: 1.在controller中验证用户输入,如果验证失 ...
- jquery validate.addMethod 正则表达式 (自定义验证方法)
//验证邮政编码 jQuery.validator.addMethod( "checkPost",function(value,element){ var ...
- jquery validate 手机号码、电话号码验证
1.手机号验证代码 a)添加方法自定义验证方法: jQuery.validator.addMethod("isPhone", function(value, element) {v ...
- jQuery Validate 提交表单验证失败扩展方法
由于Validate没有提供表单提交过后,验证不通过触发方法.这里做一下扩展. 引用场景:每次提交表单元素验证不通过触发方法 打开源代码 找到focusInvalid 方法, 这里是提交表单时验证不通 ...
- JQuery.validate.js 表单验证
官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ API: http://jquery.bassistance.d ...
最新文章
- piwik的安装与配置
- 如何写一个清晰明了的Bug
- 自动检测iOS网络并可跳转至设置界面设置网络
- 博客园自定义背景(一)
- SAP UI5 attachment control relative url binding
- 【渝粤教育】电大中专药事管理与法规 (2)作业 题库
- Android无线测试之—UiAutomator UiObject API介绍二
- VUE3模板ref引用子组件或者子组件的方法
- 小米回应 50 亿疫情贷款申请;​爱奇艺 App 崩溃;OpenSSH 8.2 发布 | 极客头条
- iDRAC RAC0218 最大回话数
- 计算机智能化音乐制作,音乐制作那些事儿
- python求最大素数_python-最大素数
- 计算机设备管理器更新驱动器,怎么利用设备管理器更新显卡驱动 - 驱动管家
- python多个if_Python之条件判断/if嵌套/如何写嵌套代码
- 81.【SpringMVC】
- 发票查验|身份证实名认证增强版API开发文档
- 华为手机忘记密码如何解开,有什么相关教程吗
- 模拟开关和数字开关的区别
- 计算机网络---网络层功能概述
- 菜鸟教程 http://www.runoob.com/
热门文章
- linux shell 脚本 supress,《linux Shell 脚本攻略》进阶学习(第一部分)
- 如何使用log4j记录日志
- java构建内存池队列_池化技术(线程池、连接池、内存池等)
- mysql把一个字段加到另一张表中_mysql如何能把一个表中的某一字段下的数据加入另一个表中相同字段下,条件是两表中的某字段相同?...
- xftp 无法连接linux 22端口,解决Xshell不从22端口连接服务器
- csdn个人主页下如何添加微信公众号及超链接
- Bash脚本教程之条件判断
- java中 下列不合法的语句_在Java中,下列( )是不合法的赋值语句。_学小易找答案...
- java遍历文件夹并获取所有路径
- mysql binlog空间维护