用jquery表单验证插件在表单中密码验证

这个jQuery插件帮你评估用户输入的密码是否足够强壮。
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)Validform - 一行代码搞定整站的表单验证!- Jquery表单验证插件
关于Validform
Validform:一行代码搞定整站的表单验证!
1$(".demoform").Validform();
为什么能如此方便?插件的核心思想就是把所有的验证条件及验证提示信息绑定到每个表单元素,让验证代码在执行时只是核对表单下各元素的值是否跟绑定的验证条件相符,这样你可以随便添加或者去掉任一表单元素而不必修改验证代码,从而使仅用一行代码去完成整站的表单验证的梦想成为现实!
功能简介:
可以在input上直接绑定正则,可以自定义datatype,自定义datatype可以是正则,也可以是函数,datatype可以累加或单选,甚至还可以对datatype规则执行简单的逻辑运算。内置10类常见的格式验证;
可以自定义提示方式,可以实现你想要的任何提示效果。内置了4种常见的提示方式;
可以对表单下的某一块区域或具体的某个表单元素单独进行验证,并可以选择验证后需不需要显示出错信息,还能得到一个值来判断被检测对象是否通过了验证;
可以轻松的取消或恢复对表单下的某一块区域或具体的某个表单元素的验证;
强大的ajax功能,很轻松的可以实现实时验证以及表单的ajax提交;可以灵活的设置ajax提交时的参数;
智能的出错信息提示:会根据绑定的datatype输出相应的出错信息,另外还可以在自定义datatype里返回具体的出错信息,错误信息里可以使用html标签,如果页面里没有显示出错信息的标签,会根据tiptype值自动创建。可以选择在没有输入时不提示和只在提交表单时有信息提示。可以选择一次提示单个错误或一次显示全部出错信息。可以自己设置默认的提示文字;
可以在表单开始检测前和表单检测通过后,提交表单之前绑定事件;
当前版本外调插件可以实现文件上传检测、密码强度检测、日期控件和表单美化效果;
丰富的Validform对象的属性和方法,给你的验证操作带来无限的可能。
[]Validform v5.3.2 更新修复以下功能:
config方法还能为已经初始化过的表单重新配置参数了;
一个表单有多个实时验证时不能正确验证的bug;
执行submitForm方法会提交对象下的所有表单了,之前是只提交第一个表单,如var demo=$(".formsub").Validform(); demo.submitForm(); 执行提交方法后,demo内的所有formsub都会提交;
没有submit按钮时,当input获得焦点,按下enter键也能提交表单了;
对于自定义datatype,还可以通过Validform对象的tipmsg.w扩展默认提示文字了,之前只能通过$.Tipmsg.w扩展;
智能提示在某些情况下的bug修正(如ie8下出现逗号、label出现换行时智能提示不能正确显示、一行有2列的情况下把2列的label都提取出来当错误提示);
其他细节调整。
[]Validform v5.3.1 更新修复以下功能:
增加了label参数;
支持jquery 1.4.3-1.9.0+版本;
调整了ajaxurl直接附带参数时的处理方式,现在参数不会做另外解析,仍附带在地址后面,所以需要用get方式去获取地址后面带的参数;
智能提示:对于多选、下拉、单选会提示为"选择"而不是"填写";
提供了datatype扩展文件下载;
其他细节调整。
[]Validform v5.3 更新修复以下功能:
Validform对象增加了config方法;
表单元素上可以绑定sucmsg属性了,用来指定验证成功时的提示文字;
修改了信息提示方式,对于没有绑定errormsg的对象,会根据所绑定的datatype输出相应的出错信息;
对于没有绑定nullmsg的对象,会自动查找类名为Validform_label下的文字作为提示文字;
如果页面里没有显示出错信息的标签,会根据tiptype值自动创建;
改变了ajax错误的处理方式,callback函数在ajax提交表单遇服务端错误时也会执行;
Validform对象的submitForm()和ajaxForm()方法增加了url参数,如果传入了url参数,表单将会提交到这个地址而不是表单action属性或config方法里所指定的地址;
细节功能增强:当提交表单时,如果表单中的某项已经在执行ajax检测,这时该项ajax结束后表单可以继续提交了;
修改了tipSweep参数的含义,当传入tipSweep=true时,只在表单提交时触发检测,blur事件将不会触发检测(实时验证会在后台进行,不会显示检测结果);
修正了check方法的bug,修正了绑定ignore时,ajaxurl不能执行的问题等;
插件的调用做了点改进,对于日期、swfupload和密码强度检测这三个插件,绑定了plugin属性即可以初始化对应的插件,可以不用在validform初始化时传入空的 usePlugin;修改使用addRule方法绑定验证时,插件不能初始化的bug;
修正了ie6下自定义提交按钮时表单不能提交的问题。Be awesome!
html部分:
&form method="post" action=""&
&div class="int"&
&label for="username"&用户名:&/label&
&!-- 为每个需要的元素添加required --&
&input type="text" id="username" class="required" /&
&div class="int"&
&label for="email"&邮箱:&/label&
&input type="text" id="email" class="required" /&
&div class="int"&
&label for="personinfo"&个人资料:&/label&
&input type="text" id="personinfo" /&
&div class="sub"&
&input type="submit" value="提交" id="send"/&&input type="reset" id="res"/&
jQuery部分:
&script type="text/javascript"&
//&![CDATA[
$(function(){
*思路大概是先为每一个required添加必填的标记,用each()方法来实现。
*在each()方法中先是创建一个元素。然后通过append()方法将创建的元素加入到父元素后面。
*这里面的this用的很精髓,每一次的this都对应着相应的input元素,然后获取相应的父元素。
*然后为input元素添加失去焦点事件。然后进行用户名、邮件的验证。
*这里用了一个判断is(),如果是用户名,做相应的处理,如果是邮件做相应的验证。
*在jQuery框架中,也可以适当的穿插一写原汁原味的javascript代码。比如验证用户名中就有this.value,和this.value.length。对内容进行判断。
*然后进行的是邮件的验证,貌似用到了正则表达式。
*然后为input元素添加keyup事件与focus事件。就是在keyup时也要做一下验证,调用blur事件就行了。用triggerHandler()触发器,触发相应的事件。
*最后提交表单时做统一验证
*做好整体与细节的处理
//如果是必填的,则加红星标识.
$("form :input.required").each(function(){
var $required = $("&strong class='high'& *&/strong&"); //创建元素
$(this).parent().append($required); //然后将它追加到文档中
//文本框失去焦点后
$('form :input').blur(function(){
var $parent = $(this).parent();
$parent.find(".formtips").remove();
//验证用户名
if( $(this).is('#username') ){
if( this.value=="" || this.value.length & 6 ){
var errorMsg = '请输入至少6位的用户名.';
$parent.append('&span class="formtips onError"&'+errorMsg+'&/span&');
var okMsg = '输入正确.';
$parent.append('&span class="formtips onSuccess"&'+okMsg+'&/span&');
//验证邮件
if( $(this).is('#email') ){
if( this.value=="" || ( this.value!="" && !/.+@.+\.[a-zA-Z]{2,4}$/.test(this.value) ) ){
var errorMsg = '请输入正确的E-Mail地址.';
$parent.append('&span class="formtips onError"&'+errorMsg+'&/span&');
var okMsg = '输入正确.';
$parent.append('&span class="formtips onSuccess"&'+okMsg+'&/span&');
}).keyup(function(){
$(this).triggerHandler("blur");
}).focus(function(){
$(this).triggerHandler("blur");
});//end blur
//提交,最终验证。
$('#send').click(function(){
$("form :input.required").trigger('blur');
var numError = $('form .onError').
if(numError){
return false;
alert("注册成功,密码已发到你的邮箱,请查收.");
$('#res').click(function(){
$(".formtips").remove();
阅读(...) 评论()

我要回帖

更多关于 jquery表单验证实例 的文章

 

随机推荐