jQuery Validate 插件[表单验证]
在客户端添加信息提交表单时我们经常需要做一些验证,比如验证不能为空,验证客户输入手机格式,验证客户输入email,url等的格式,我们可以通过EL表达式结合js 进行自主验证,今天总结一个JQuery 插件,进行简单的验证
首先我们来看一个简单的例子,我们需要自动验证是否为空及格式是否正确
<form class="form-horizontal" id="userBaseForm" method="post">
<div class="form-group form-md-line-input" >
<label class="col-sm-2 col-xs-2 control-label" for="form_control_1"><b>用户账号</b></label>
<div class="col-sm-10 col-xs-10">
<input id="userNo" name="userNo" placeholder="请填写用户账号(小写字母和数字组合),不能超过14个字符!" class="form-control" />
<div class="form-control-focus"></div>
<span class="help-block">请填写用户账号!</span>
</div>
</div>
<div class="form-group form-md-line-input" >
<label class="col-sm-2 col-xs-2 control-label" for="form_control_1"><b>用户名称</b></label>
<div class="col-sm-10 col-xs-10">
<input id="userName" name="userName" placeholder="请填写用户名称,不能超过8个字符!" class="form-control" />
<div class="form-control-focus"></div>
<span class="help-block">请填写用户名称!</span>
</div>
</div>
<div class="form-group form-md-line-input" >
<label class="col-sm-2 col-xs-2 control-label" for="form_control_1"><b>角色</b></label>
<div class="col-sm-10 col-xs-10">
<select class="form-control" data-live-search="true" name="ext1Int" id="ext1Int">
<c:forEach items="${roles}" var="role" >
<option value="${role.roleId}" <c:if test="${role.roleId==9}">
selected = selected
</c:if> >${role.roleName}</option>
</c:forEach>
</select>
</div>
</div>
<div class="form-group form-md-line-input" >
<label class="col-sm-2 col-xs-2 control-label" for="form_control_1"><b>联系电话</b></label>
<div class="col-sm-10 col-xs-10">
<input id="userTel" name="userTel" placeholder="请填写联系电话名称,不能超过11个字符!" class="form-control"/>
<div class="form-control-focus"></div>
<span class="help-block">请填写联系电话!</span>
</div>
</div>
<div class="form-group form-md-line-input" >
<label class="col-sm-2 col-xs-2 control-label" for="form_control_1"><b>电子邮箱</b></label>
<div class="col-sm-10 col-xs-10">
<input id="userEmail" name="userEmail" placeholder="请填写电子邮箱名称,不能超过20个字符!" class="form-control" />
<div class="form-control-focus"></div>
<span class="help-block">请填写电子邮箱!</span>
</div>
</div>
</form>

然后js用validate
<script type="text/javascript">
$(function(){
$("#userBaseForm").validate({
errorElement(用什么标签标记错误,默认是 label,我们设置为span): 'span',
errorClass(指定错误提示的 css 类名,可以自定义错误提示的样式。):'help-block help-block-error',
focusInvalid(提交表单后,未通过验证的表单(第一个或提交之前获得焦点的未通过验证的表单)会获得焦点。): false,
ignore(忽略某些信息不验证): '',
rules(要求): {userNo: {required(必填字段): true,pattern(验证格式):/^[a-z\d]{5,15}$/,remote(异步验证):{type:'post',url:CONSTANT_PATH+'/user/nameVaild',data: {userNo:function(){return $("#userNo").val();}},dataType: "json",dataFilter:function (data){return data;}}},
userName:{required: true,pattern:/^[\u4e00-\u9fa5]{2,10}$/},userTel:{required: true,mobileCN:true},userEmail:{required: true,email:true}},
messages(不符合规则是显示的信息):{userNo:{pattern(验证格式不通过时显示的信息):'用户账号格式非法!',remote(异步验证不成功时显示的信息):'该账号已经存在!'},userName:{pattern:'真实用户名格式非法,必须是中文!'}},
errorPlacement: function(error,element){error.insertAfter(element);},
highlight: function(element) {$(element).closest('.form-group').addClass('has-error');},
unhighlight: function(element) {$(element).closest('.form-group').removeClass('has-error');},
success(成功后对应操作): function(label) {label.closest('.form-group').removeClass('has-error');},
submitHandler(提交对应操作):function(form){(用ajax方式提交form表单)
$.ajax({url:CONSTANT_PATH+"/user/addUserBase",type:"POST",data:$("#userBaseForm").serialize(),
beforeSend:function(){layer.load();},
success:function(data){
if(data.flg) {
parentSucc();
window.parent.reloadFrame();
closeParentDialog();
}
else{
parentError(data.errorMsg);
}
}});
return false;
}});
});
function uptInfoForm(){
$("#userBaseForm").submit();
}
</script>
这样便可实现如下操作

下一篇见详细介绍validate,该插件可在官网下载https://jqueryvalidation.org/
jQuery Validate 插件[表单验证]的更多相关文章
- jQuery Validate 插件[表单验证 属性介绍]
详细介绍一下Validate插件 $("#form的Id").validate({ }) 属性 规则 描述 required:true 必须输入的字段 required: &quo ...
- Jquery.validate.js表单验证插件的使用
作为一个网站web开发人员,以前居然不知道还有表单验证这样好呀的插件,还在一行行写表单验证,真是后悔没能早点知道他们的存在. 最近公司不忙,自己学习一些东西的时候,发现了validation的一个实例 ...
- jQuery.validate.js表单验证插件
jQuery.validate.js表单验证插件的使用 效果: 代码: <!DOCTYPE html> <html lang="en"> <head& ...
- 基于Jquery Validate 的表单验证
基于Jquery Validate 的表单验证 jquery.validate.js是jquery下的一个验证插件,运用此插件我们可以很便捷的对表单元素进行格式验证. 在讲述基于Jquery Vali ...
- 异步提交form的时候利用jQuery validate实现表单验证
异步提交form的时候利用jQuery validate实现表单验证相信很多人都用过jquery validate插件,非常好用,并且可以通过下面的语句来自定义验证规则 // 电话号码验证 ...
- 基于Bootstrap+jQuery.validate Form表单验证实践
基于Bootstrap jQuery.validate Form表单验证实践 项目结构 : github 上源码地址:https://github.com/starzou/front-end- ...
- 表单验证代码实例:jquery.validate.js表单验证插件
jquery.validate.js是JQuery旗下的一个验证插件,借助JQuery的优势,我们可以迅速验证一些常见的输入,并且可以自己扩充自己的验证方法.使用前请先下载必要的JQuery插件:jq ...
- jquery.validate.js表单验证
一.用前必备官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ API: http://jquery.bassist ...
- jquery.validate.js 表单验证简单用法
引入jquery.validate.js插件以及Jquery,在最后加上这个插件的方法名来引用.$('form').validate(); <!DOCTYPE html PUBLIC " ...
随机推荐
- Codeforces Round #361 (Div. 2)
A 脑筋急转弯 // #pragma comment(linker, "/STACK:1024000000,1024000000") #include <iostream&g ...
- RabbitMQ (四) 路由选择 (Routing) -摘自网络
本篇博客我们准备给日志系统添加新的特性,让日志接收者能够订阅部分消息.例如,我们可以仅仅将致命的错误写入日志文件,然而仍然在控制面板上打印出所有的其他类型的日志消息. 1.绑定(Bindings) 在 ...
- Linux虚拟机创建后如何进行登录(Windows Azure)
Linux虚拟机创建后如何进行登录 若要管理虚拟机的设置以及在其上运行的应用程序,可以使用安全外壳 (SSH) 客户端.为此,您必须在计算机上安装要用于访问虚拟机的 SSH 客户端.您可以选择很多 S ...
- 附加题-stack的理解
这次的附加题推荐的博客是http://www.ruanyifeng.com/blog/2013/11/stack.html阮一峰的,感觉讲的深入浅出,比较适合对计算机刚刚接触的人: 下面谈谈感想: 这 ...
- 轻松学习 red5 教程 像视频一样很详细还有代码直接可Copy
转载自:http://blog.csdn.net/hongdianking/archive/2009/11/12/4804339.aspx 最近要做一个流媒体服务器,在网上逗留了好久决定选择 red5 ...
- Java IO (4) - Writer
Java IO (4) - Writer 前言 JavaIO一共包括两种,一种是stream,一种是reader/writer,每种又包括in/out,所以一共是四种包.Java 流在处理上分为字符流 ...
- [MAC OSX - 1] OSX10.10不能安装JKD8,不能使用eclipse
(1)电脑升级为10.10后,打开eclipse总是提示"您需要安装旧 Java SE 6 运行环境才能打开"Eclipse". 解决:安装JKD (2)不能安装JK ...
- freemarker截取字符串subString
转至:http://fengzhijie1103.iteye.com/blog/1142918 freemarker截取字符串其实和JAVA语法是差不多了,也有substring 方法 如 ...
- PC 端微信扫码注册和登录
一.前言 先声明一下,本文所注重点为实现思路,代码及数据库设计主要为了展现思路,如果对代码效率有着苛刻要求的项目切勿照搬. 相信做过微信开发的人授权这块都没少做过,但是一般来说我们更多的是为移动端的网 ...
- mime type 概要介绍
内容类型 内容类型(Content-Type),这个头部领域用于指定消息的类型.一般以下面的形式出现. Content-Type: [type]/[subtype]; parameter type t ...