宝哥软件园

详细解释jQuery的表单验证插件——验证

编辑:宝哥软件园 来源:互联网 时间:2021-09-06

概述

jQuery Validate插件为表单提供了强大的验证功能,使得客户端的表单验证变得更加容易,并提供了大量的定制选项来满足应用程序的各种需求。该插件捆绑了一组有用的身份验证方法,包括URL和电子邮件身份验证,并为编写用户定义的方法提供了一个API。默认情况下,所有绑定方法都使用英语作为错误消息,并且已经被翻译成37种其他语言。该插件由rn Zaefferer编写和维护,他是jQuery团队的成员,jQuery UI团队的主要开发者,也是QUnit的维护者。这个插件出现在2006年初的jQuery中,并且一直在更新。访问jQuery Validate官网,下载最新版本的jQuery Validate插件。

下载地址:http://xiaozai . JB 51 . net/201612/马援/jquery-validation-1 . 14 . 0 _ jb51.rar

基本语法

验证插件需要jQuery,所以我们需要在标题中引入jQuery和Validate文件

脚本类型=' text/JAVAScript ' src=' http : lib/jquery . js '/script script类型=' text/JAVAScript ' src=' http 3360 dist/jquery . validate . min . js '/导入脚本文件后,先编写一个简单的表单

form class=' cmx form ' id=' comment form '方法=' get' fieldset legend验证完整的表单/图例P标签是否为=' first name ' name/Labelinput id=' first name ' name=' first name ' type=' text '/P标签是否为=' lastname '姓氏/label input id=' last name ' type=' text '/P标签是否为=' username ' username/label input id=' username ' type=' username ' type=' text '/P标签是否为=' 标签输入id=' password ' name=' password ' type=' password '/P P标签为=' confirm _ password '验证密码/标签输入id=' confirm _ password ' name=' confirm _ password ' type=' password '/P P标签为=' email ' email/Labelinput id=' email ' name=' email ' type=' email '/P P标签为=' agreement '请同意我们的声明/label input type=' check box ' class=' check box ' id=' agree ' name=' agree '/P input class=' submit '

首先,我们需要知道哪种形式需要验证

$(function(){ $('#commentForm '))。validate();});然后开始写验证规则。请注意,这里的选择元素是根据每个标签的名称属性选择的。基本语法如下

$ ('# commentform ')。validate({ rule s 3360 { first name 3360 ' required ',//required表示必填字段last name 3360 { required d 3360 true,min length 3360 3//最小长度为3 } });从上面可以看出,如果一条消息只有一个验证要求,可以写成一行,比如名字;如果有多个验证需要以姓氏的形式书写;了解基本语法

查看验证提供的验证规则,

(1)required d : rue必填字段(2),remote3360' remote-valid.jsp '使用ajax方法remote:'remote-valid.jsp验证输入值(3),email:true必须以正确的格式输入电子邮件(4),Url:true必须以正确的格式输入网站地址(5),date:true必须以正确的格式输入日期,日期验证ie6错误,谨慎使用(6),datetrue必须以正确的格式输入日期不验证有效性(7),数字:必须输入合法数字(负数,十进制数)(8),数字:必须输入整数(9),信用卡:必须输入合法信用卡号(10),等于:'#password '必须与#password (11)相同,接受:带有合法后缀名称的输入字符串(上传文件的后缀)(12),最大长度:5输入字符串,最大长度为5(中文字符计为一个字符)(1) 10]输入长度必须在5到10之间(汉字算一个字符)(15)的字符串,range:[5,10]的输入值必须在5到10 (16)之间,max:5的输入值不能大于5(17),min:10的输入值不能小于10。 我们将对上述表格进行如下验证和改进。

$(function(){ $('#commentForm '))。validate({ rule s : { first name : { required d : true,minlength: 5 },lastname: 'required ',username : { required d : true,rangelength: [4,6]),password : { required d : true,minlength: 4,number: true },confirm _ password 3: { required d 3: true});效果:

可以看到这里的提示默认是英文的不尽如人意,有两种方式可以将提示信息改为中文

第一种方式:介绍语言文件(推荐)

脚本类型=' text/JavaScript ' src=' http : list/localization/messages _ zh . js '/脚本

他的信息是:

Required:“这是必填字段”,remote:“请更正此字段”,email:“请输入有效的电子邮件地址”,url:“请输入有效的网址”,date:“请输入有效的日期”,DateISO:“请输入有效的日期(YYYY-MM-DD)”,number:“请输入有效的数字”,digits:“仅限数字”,creditcard:“请输入有效的信用卡号码”,email扩展名: '请输入有效的后缀',maxlength: $。validator.format('最多可以输入{0}个字符'),minlength: $。validator.format('您必须至少输入{0}个字符')。范围长度:美元。验证器。format('请输入长度介于{0}和{1}之间的字符串),$ .validator.format('请输入长度介于{0}和{1}之间的值)。Max: $.validator.format('请输入不大于{0} '的值),min: $.validator.format('请输入不小于{0} '的值)第二种方法:自己写提示信息

$('#commentForm ')。validate({ rule s : { first name : { required d : true,minlength: 5 },lastname: 'required ',username : { required d : true,rangelength: [4,6]),password : { required d : true,minlength: 4,number: true },confirm _ password 3: { required d 3: truePassword : { required d : '请输入密码',minlength: '密码长度不能少于5个字母' },confirm _ Password : { required d : '请输入密码',Minlength: '密码长度不能少于5个字母',equalTo: '密码输入两次不一致' },email: '请输入正确的邮箱',} });效果:

注意:写验证的另一种方法是在课堂上写,例如

输入id=' first name ' name=' first name ' type=' text ' class=' { required d : true,minlength:2} '

但是不建议这样写,因为不符合风格和结构分离的要求,需要下载一个jquery.metadata.js文件这样写

表单提交问题

我们可以在提交表单之前执行自定义代码,然后在执行自定义代码之后提交表单

$ ('# commentform ')。验证({ submit handler : function(){ alert('提交的事件成功'));from . submit();} });您可以设置验证的默认值

$.validate . setdefaults({ SubmIthandler : FuncTion(){ alert('提交成功!');form . submit();} });仅验证,不提交表格

$(function(){ $('#commentForm '))。验证({ debug:true});});错误提示信息设置

1.错误消息位置设置

errorPlacement方法用于设置错误消息的显示位置,默认值位于验证元素之后

errorPlacement:函数(错误,元素){ error . appendo(element . parent());}errorClass是设置错误信息的样式,后跟css类名

ErrorElement用于设置包装错误消息的标签,默认值为label

ErrorLabelContainer被设置为将所有错误消息打包在一个位置

包装器是设置使用什么标签,然后包装上面的errorELement

例如:

errorPlacement:函数(错误,元素){ $(元素)。最接近('形式')。find(' label[for=' element . attr(' id ')' ']')。追加(错误);},错误信息显示在已验证信息的前面

效果:

例如:

Errormelement :' span ',errorclass : ' commentererror ',error label container 3360 $(' formdiv。错误'),包装器:' Li ',它是用span标签包装每个提示信息。添加名为。对它们进行注释,用类错误将它们包装在一个div中,并用li包装每个提示信息

效果:

2.错误消息样式设置

有两种方法可以修改提示信息的样式

首先是使用下载Validation时附带的样式文件

link href=' demo/CSS/screen . CSS ' type=' text/CSS ' rel='样式表'/

第二种方法是定义自己的样式(当然,也可以修改自己的css文件)

例如,添加这样的样式:

input.error { border: 1px纯红;} label . error { background : URL(' demo/images/unchecked . gif ')no-repeat 0px 0px;左填充left: 16pxpadding-bottom : 2px;font-weight:粗体;color: # EA5200} label . checked { background : URL(' demo/images/checked . gif ')no-repeat 0px 0px;}效果:

验证中的问题

1.已验证的元素通过

如果您想在已验证的元素通过验证时进行操作,可以使用success,它可以接受字符串或函数,并在接受字符串时添加样式

例如:

success:函数(){ alert(1);},待验证元素通过验证时,弹出1

例如:

成功: '有效'

是添加名为。对元素有效

2.验证方法

自定义验证

虽然Validation提供了很多验证方法,但是有些情况是不够的,所以如果要添加自定义的验证方法,可以使用addMethod方法,通常是在additional-methods.js中编写自定义的方法,然后引入这个文件

脚本类型=' text/JavaScript ' src=' http : list/additional-methods . js '/脚本

编写附加方法. js文件的内容

例如:

$ . validator . addmethod(' iszipcode ',function(value,element){ var tel=/^[0-9]{6}$/;返回this . optional(element)| |(tel . test(value));}、“请正确填写您的邮政编码”);只需将这段代码写入附加方法. js文件,您就可以使用它了

例如:

zipcode : { required d : true,iszipcode : true}效果:

验证无线电,复选框和选择

对无线电的要求意味着必须选择一个

复选框的必选表示必须选择,最小长度表示必须选择的最小数字,最大长度表示必须选择的最大数字,范围长度[2,3]表示选择的数字间隔

Selected required表示所选值不能为空,minlength表示必须选择的最小数字,maxlength表示必须选择的最大数字,rangelength[2,3]表示所选数字间隔

总结:验证插件提供了很多验证,用户可以添加自己的验证样式和提示信息。但是,我在博客中没有提到任何与ajax相关的内容,因为ajax还没有学会-_-| |。如果有什么问题,请和我讨论。如有错误,请指正。

以上就是本文的全部内容。希望本文的内容能给大家的学习或工作带来一些帮助,也希望多多支持我们!

更多资讯
游戏推荐
更多+