
标签:
jQuery Validate是一款基于jQuery的轻量级验证插件,我们可以通过jQuery Validate插件来进行前端数据的验证工作。这款软件内置了各种验证规则和自定义规则接口,从而让你能够通过向后台提交数据来完成验证操作,非常适合专业的开发人员使用。

jQuery.validate是非常灵活的JavaScript校验框架,该插件捆绑了一套有用的验证方法,包括 URL 和电子邮件验证,同时提供了一个用来编写用户自定义方法的 API。所有的捆绑方法默认使用英语作为错误信息,且已翻译成其他 37 种语言。我们这里提供的是jQuery.validate.js验证控件下载,还附带了API中文手册,文件有:additional-methods.js,additional-methods.min.js,jquery.validate.js,jquery.validate.min.js和jQuery.validate.js+API中文.pdf。

1、内置验证规则:拥有必填、数字、E-Mail、URL和信用卡号等19类内置验证规则
2、自定义验证规则:可以很方便地自定义验证规则
3、简单强大的验证信息提示:默认了验证信息提示,并提供自定义覆盖默认提示信息的功能
4、实时验证:可以通过keyup或blur事件触发验证
required:true必须输入的字段
remote:"check.php"使用 ajax 方法调用 check.php 验证输入值
email:true必须输入正确格式的电子邮件
url:true必须输入正确格式的网址
date:true必须输入正确格式的日期,内部调用Date.parse()方法进行校验
dateISO:true必须输入正确格式的日期(ISO),如:2009-06-23,1998/01/22
number:true必须输入合法的数字(负数,小数)
digits:true必须输入整数
creditcard:必须输入合法的信用卡号
equalTo:"#field"输入值必须和 #field 相同
accept: 输入拥有合法后缀名的字符串(上传文件的后缀)
maxlength:5输入长度最多是 5 的字符串(汉字算一个字符)
minlength:10输入长度最小是 10 的字符串(汉字算一个字符)
rangelength:[5,10]输入长度必须介于 5 和 10 之间的字符串(汉字算一个字符)
range:[5,10]输入值必须介于 5 和 10 之间
max:5输入值不能大于 5
min:10输入值不能小于 10
通过一段时间的使用,感觉用起来还是非常简单的。这里做一下使用方法的简单介绍,而后会介绍一个我自己扩展的一种错误提示方式(感觉默认的信息提示的方式比较一般实在不怎么好看)。
闲话少说,先说下用法:
先导入必要的两个js文件
XML/HTML代码
另外还有一段css,用来突出显示出错的表单控件和错误信息的显示样式:
CSS代码
input.error { border: 1px dotted red; }
label.error {
color: red;display: none;
}
label.error 的display: none是为了让我们可以在页面上任意位置放置显示错误的label以及上面的内容,并在没有进行校验时不显示出来。
需要的东西都齐了,我们可以为我们的表单元素添加校验了。添加校验的方法总的说有两种:一种写在控件的标签上;另一种写在js脚本中。并且两种方法可混合使用。
第一种写在标签中的如下:
XML/HTML代码
class="required number" 表示必须字段且为数值型,max="10" 表示最大值为10。
另一种使用JavaScript脚本的写法如下:
XML/HTML代码
其中test_form是表单form的id,t2是需要校验的控件的名字。rules后面的json描述的是校验规则,messages是自定义的错误信息。顺便说一句,有时候我们form中控件的name中是带“.”的,比如:user.name,这时候用js脚本定义校验规则时,需要加上引号:”user.name”。
这两种写法各有利弊,直接写在控件标签上的比较简单直观,相对来说js的写法过于复杂,可灵活性更强。而且有时候我们可能没机会在控件的标签上写规则,假如我们用了标签库,如struts标签库,有些标签我们写上max=“10”这样的东西,标签库将无法解析直接报错。总之,这两种写法jQuery.validate都认识,我们在合适的场景选择合适的方式就可以了。
另外,如果你想把规则写在控件的标签上,仅仅写上规则是不行的,还需要在页面加载完的时候调用一下$('#test_form').validate();为form添加校验,这样在你点提交按钮的时候就会自动校验了。
说了这么多,该上个图了,看看校验的效果:
成功了,校验的效果有了,表单也不会被提交。可能有的同学要说了,“要不要这么难看啊?”。这正是我下面要解决的问题。
我们来自定义一个错误显示的方式,效果如下:
错误控件突出显示的方式没有改,为了兼容有些浏览器有些控件比如火狐中单选按钮没法标注红框的问题,在每个错误的控件后面放了一个红色的小叉号,另外当鼠标移动到错误控件或者小叉号上时显示错误的信息。
实现这个效果的主要js代码如下:
JavaScript代码
function showErrors(){
var t = this;
for ( var i = 0; this.errorList[i]; i++ ) {
var error = this.errorList[i];
this.settings.highlight && this.settings.highlight.call( this, error.element, this.settings.errorClass, this.settings.validClass );
var elename = this.idOrName(error.element);
// 错误信息div
var errdiv = $('div[htmlfor='+ elename + ']');
var errimg = $('img[htmlfor='+ elename + ']');
if(errdiv.length == 0){ // 没有div则创建
// 纯css不用图片的圆角div,存在在IE6下显示过长的问题
// errdiv = $('
'
// + ''
// + ' '
// + ' '
// + '
');
// 带图片的圆角div在所有浏览器兼容
errdiv = $('
'
+ ''
+ '
'
+ ''
+ '
');
errdiv.attr({"for": this.idOrName(error.element), generated: true})
.addClass(this.settings.errorClass);
// errdiv.css({left : $.getLeft(error.element) + 'px',top : $.getTop(error.element) + 'px'}); // 显示在控件的下面
errdiv.appendTo($('body'));
}
if(errimg.length == 0){ // 没有img则创建
errimg.attr({"for": this.idOrName(error.element), generated: true});
errimg.insertAfter(error.element);
}
errimg.show();
errdiv.find(".errmsg").html(error.message || "");
// 鼠标放到图片显示错误
$(errimg).hover(function(e){
$('div[htmlfor="'+ $(this).attr('htmlfor') + '"]').css({left : (e.pageX+20) + 'px',top : (e.pageY+20) + 'px'}); // 显示在鼠标位置偏移20的位置
$('div[htmlfor="'+ $(this).attr('htmlfor') + '"]').fadeIn(200);
},
function(){
$('div[htmlfor="'+ $(this).attr('htmlfor') + '"]').fadeOut(200);
});
// 鼠标放到控件上显示错误
$(error.element).hover(function(e){
$('div[htmlfor="'+ t.idOrName(this) + '"]').css({left : (e.pageX+20) + 'px',top : (e.pageY+20) + 'px'}); // 显示在鼠标位置偏移20的位置
$('div[htmlfor="'+ t.idOrName(this) + '"]').fadeIn(200);
},
function(){
$('div[htmlfor="'+ t.idOrName(this) + '"]').fadeOut(200);
});
}
// 校验成功的去掉错误提示
for ( var i = 0; this.successList[i]; i++ ) {
$('div[htmlfor="'+ this.idOrName(this.successList[i]) + '"]').remove();
$('img[htmlfor='+ this.idOrName(this.successList[i]) + ']').hide();
}
// 自定义高亮
if (this.settings.unhighlight) {
for ( var i = 0, elements = this.validElements(); elements[i]; i++ ) {
this.settings.unhighlight.call( this, elements[i], this.settings.errorClass, this.settings.validClass );
}
}
}
$.extend({
getLeft : function(object) {
var go = object;
var oParent, oLeft = go.offsetLeft;
while (go.offsetParent != null) {
oParent = go.offsetParent;
oLeft += oParent.offsetLeft;
go = oParent;
}
return oLeft;
},
getTop : function(object) {
var go = object;
var goHeight = go.height;
var oParent, oTop = go.offsetTop;
while (go.offsetParent != null) {
oParent = go.offsetParent;
oTop += oParent.offsetTop;
go = oParent;
}
return oTop + 22;// 之所以加22不加控件高度,为了兼容ie6.
}
});
// 本地语言
jQuery.extend(jQuery.validator.messages, {
required: "必选字段",
remote: "请修正该字段",
email: "请输入正确格式的电子邮件",
url: "请输入合法的网址",
date: "请输入合法的日期",
dateISO: "请输入合法的日期 (ISO).",
number: "请输入合法的数字",
digits: "只能输入整数",
creditcard: "请输入合法的信用卡号",
equalTo: "请再次输入相同的值",
accept: "请输入拥有合法后缀名的字符串",
maxlength: jQuery.validator.format("请输入一个长度最多是 {0} 的字符串"),
minlength: jQuery.validator.format("请输入一个长度最少是 {0} 的字符串"),
rangelength: jQuery.validator.format("请输入一个长度介于 {0} 和 {1} 之间的字符串"),
range: jQuery.validator.format("请输入一个介于 {0} 和 {1} 之间的值"),
max: jQuery.validator.format("请输入一个最大为 {0} 的值"),
min: jQuery.validator.format("请输入一个最小为 {0} 的值")
});
自定义一个showErrors的方法,然后在为表单添加校验时,指定使用这个方法显示错误信息。
JavaScript代码
$('#test_form').validate({
rules:{
t2 : {required:true,number:true}
},
messages:{t2:{required :"这个字段你必须填~~!",number:"这个字段真的可以是数字"}},
showErrors: showErrors //使用自定义的错误显示方法
});
这样子我们想要的效果就实现了,是不是感觉比原来的样子好多了呢?
1:该下载地址为九点软件园本地下载地址,jQuery Validate最新版下载包预览图如下:

2:下载包的正确包名:jQuery.validate.js_9a9m.com.rar
3:九点小编提醒本下载包为九点小编亲自上传,上传时间为2025年9月29日,如果失效评论区留意反馈(小编上传的很辛苦喜欢就点个赞吧)
appinventor下载-App Inventor安卓编程软件v3.29.0720最新版下载
Jeecms最新版下载-Jeecms电脑版 v2012官方版下载
Easyprog最新版下载-Easyprog(凯迪恩编程软件) v1.9.5.1 官方版下载
Jenkins最新版下载-Jenkins长期支持版 v2.204.2官方版下载
LE-Log最新版下载-LE-Log(简单日志调试工具) v1.0官方版下载
UnRaid安装辅助工具最新版下载-UnRaid安装辅助工具 v6.8.1官方版下载
Zend Guard最新版下载-Zend Guard中文版v7.0官方版下载
LightProxy最新版下载-LightProxy(阿里抓包工具) v1.1.16官方版下载
Openfire最新版下载-Openfire服务器 v3.10.3官方版下载
Gradle最新版下载-Gradle中文版【JVM构建工具】 v5.5.1官方版下载
walkLan下载-walkLan【脚本编辑器】v1.0官方版下载
bbs-go下载-bbs-go(开源社区系统) v3.3.2官方版下载
dnSpy下载-dnSpy反编译工具 v6.1.8中文版下载
Architect最新版下载-Enterprise Architect中文特别版 v15.55官方版下载
hangfire下载-Hangfire(统一编程模型) v1.7.31官方版下载
编程猿下载-猿编程电脑客户端 v3.49.1官方版下载
anaconda下载-Anaconda v5.0.1.2官方中文版下载
commons dbutils.jar下载-commons dbutils.jar v1.6官方版下载
PatchFactory下载-PatchFactory(补丁制作工具) v3.3官方版下载
安卓电子书制作软件下载-Android Book Maker(安卓电子书制作) v1.0免费版下载
e4a破解版下载-易安卓E4A(含破解补丁) v7.1.14免注册版下载500.44MB5032人在玩易安卓E4A是九点小编为大家推荐的一款非常好用并基于谷歌Simple语言、专为安卓系统开发应用打造的编程辅助工具软件,让安卓开发无限简单,可以说是安卓版本的易语言程序。
下载
火山编程破解版下载-火山软件开发平台 V2.0绿色破解版下载1.2GB3869人在玩火山软件开发平台是九点小编为编程开发用户分享的全新专业且深受诸多用户们喜爱的软件开发编程工具应用,是一种目的硬件设备无关、目的软件环境无关、易学易用实用、完全本地化的软件快速开发平台,有着极高流畅度的专业型迅速软件软件开发平台
下载
appinventor下载-App Inventor安卓编程软件v3.29.0720最新版下载89.58M2435人在玩App Inventor是九点小编为程序员们推荐的一种基于Web的开发环境,用于创建Android应用程序。它是由麻省理工学院(MIT)开发的,旨在使移动应用程序开发变得更加易于学习和使用。
下载
星三好图形化编程软件下载-星三好图形化编程 v3.7.0官方版下载141MB1728人在玩星三好图形化编程软件是九点小编为大家推荐的一款功能强大,专业实用的优秀网络编程学习软件,用户能够通过积木形状模块来实现构成程序的命令和参数,只需要用鼠标拖动模块就能完成编程,欢迎下载使用。
下载
米思齐编程软件下载-Mixly(米思齐图形化编程工具) v2.0 RC4官方版下载96.72MB1720人在玩Mixly For Arduino(米思齐图形化编程工具)windows版,基于Google的Blockly图形化编程框架开发,目的是为了配合Arduino UNO开发板套件使用,实现Arduino程序的图像化编程,Mixly自带Java8运行环境,用户直接双击mixly.vbs即可使用。
下载
oracle 客户端下载-Oracle 11G客户端(32/64位) v11.2.0.4.0免费版下载1.95G1412人在玩oracle11g客户端 是从 Oralce 11gR2 的官方客户端安装包中而来的 Oracle 数据库客户端,专为企业设计,轻松运行大量数据库除了可以连接远程数据库以外,还包含 SQL Plus、JDBC Driver、ODBC Driver、Pro*C SDK、Net Configuration Assistant、Net Manager 等。
下载
易语言5.9破解版下载-易语言 V5.9完美破解版下载313.71MB1269人在玩易语言是九点小编为大家推荐的一款转为国人而设计的编程软件,由大连大有吴涛易语言软件开发有限公司推出,通过对易语言的学习,即便用户的英语水平不够好也能够轻松进行编程操作,让那些想编程且又不会英文的朋友们,提供了一条快速进入Windows程序编程的大门,支持基于汉语字、词编程的、全可视化的、跨主流操作系统平台的编程工具。
下载
navicat15破解版下载-Navicat 15 绿色版下载115MB1001人在玩Navicat 15是九点小编为大家推荐的一款功能强大的数据库管理软件,软件采用可视化操作方式,无需任何代码即可轻松完成数据库的增删改查、备份等操作,可以帮助用户更好的管理数据库。
下载
thonny官网下载-Thonny(Python编辑器) v3.3.13官方版下载27.6MB997人在玩Thonny是一款Python编辑器,基于python内置图形库tkinter开发出来的,支持Windows、Mac、Linux多平台,支持语法着色、代码自动补全、debug等功能,软件容易上手!
下载
redpandadevc++下载-Red Panda(小熊猫C++) v2.10官方版下载9.9MB893人在玩小熊猫C++是九点小编为大家推荐的一款专业的编程软件工具,软件是专为程序开发人员推出,软件无需复杂的安装和配置,打开即可直接编辑程序文件;无需创建项目,点击工具栏上按钮即可编译、运行和调试程序即可!
下载