`
wangking717
  • 浏览: 262589 次
  • 性别: Icon_minigender_2
  • 来自: 成都
社区版块
存档分类
最新评论

JQuery表单验证插件EasyValidator,超级简单易用!

阅读更多
作者 写道
本插件的宗旨是:用户无需写一行JS验证代码,只需在要验证的表单中加入相应的验证属性即可,让验证功能易维护,可扩展,更容易上手。

DEMO中已经包含了常用的正则表达式,可以直接复用,为了考虑扩展性,所以针对不同用户特殊需求,自行写正则吧。

EasyValidator实现的功能:

 

1.提示功能(在表单或者其他标签中加入tip="想提示的文字")

     如:

    <input name="name" tip="请输入你的名字哟~">

    或者

    <a href="http://wangking717.iteye.com/blog/769021" tip="到EasyValidator官方主页来" target="_blank">有疑惑可以到这里提问</a>


2. 普通表单验证(在表单中加入reg="正则表达式")
    如: <input name="username" reg="正则" />
    普通表单验证DEMO:http://easyvalidator.coding.io/


3. AJAX表单验证(在表单中加入url="验证系统地址")
    如: <input name="username" url="地址" />
    AJAX验证DEMO:没有在线演示,请在本地运行ajax_demo.html,请求远程的PHP文件,当然可以为JSP或者ASP,我这里在程序里预设了一些已存在的数据,用户可以自行参考。


4. 普通表单验证 +  AJAX表单验证 (普通验证通过以后,再进行AJAX验证)
    如: <input name="username" reg="正则" url="地址" />


5. 扩展函数表单验证(某些业务特殊需求):
    这些特殊需求都是根据业务来的,这里列举一下这样的情况:
    1.checkbox选择框数量验证,如限制别人至少选择1个,最多选择5个checkbox。
    2.多个表单之间进行比较,如【开始时间表单】一定小于等于【结束时间表单】或者两个密码表单要相等,用于注册的时候,等等。

由于这种情况的特殊性,所以用户得自己写业务逻辑代码,官方已经提供了extendsValidate扩展函数,在里面写自己的逻辑代码即可。
扩展函数表单验证DEMO:http://easyvalidator.coding.io/extends_demo.html



BUG修复日志:
2010-9-24 : 修复同一页多个FORM提交BUG ,TIP错位BUG
2010-9-26 : 新增bgiframe插件, 修复IE6下TIP 遮罩不了 SELECT表单
2010-9-27 : 增加扩展API,并重构核心库

2011-1-1   : 将表单验证的TIP独立出来,让TIP,URL,REG成为单独的组建而存在,更加灵活!

2011-1-28 : 修改了AJAX的TIP纠错BUG,逻辑修改,并且将AJAX的请求的远程程序validate_user.php的编码设置GB2312。

 

最新下载地址:https://coding.net/u/wangking/p/EasyValidator/git/branches

 

有人说找不到下载地址。这里提供图例供参考:



 

 

在线正则验证器:http://tool.chinaz.com/regex/

  • 大小: 126.9 KB
  • 大小: 25 KB
分享到:
评论
95 楼 wangking717 2011-02-12  
hp3325 写道
我一直在测试,所以问题也提得多:
验证正确的就不要再显示TIP提示了,这样更人性化一些

当初的设计思路就是TIP仅仅是提示用途,不一定非得用在表单验证里,和你想要的思路不一样。所以改动会比较大。
94 楼 hp3325 2011-02-11  
我一直在测试,所以问题也提得多:
验证正确的就不要再显示TIP提示了,这样更人性化一些
93 楼 wangking717 2011-02-10  
hp3325 写道
如果你的选项里的数值0为正常选项数值的话,你可以选择0以下的数值作为未选择的数值,如:
<select name="type" reg="[^-1]" tip="一定要选择">
          <option value="-1">--请选择付款类型--</option>
          <option value="1">支出款</option>
          <option value="0">收入款</option>
</select>
用了后选择<option value="1">支出款</option>又不能通过验证了

不好意思,我举例没举对,你可以试试这样
<select name="type" reg="[^a]" tip="一定要选择">
          <option value="a">--请选择付款类型--</option>
          <option value="1">支出款</option>
          <option value="0">收入款</option>
</select>
这样应该能行了。
92 楼 hp3325 2011-02-10  
如果你的选项里的数值0为正常选项数值的话,你可以选择0以下的数值作为未选择的数值,如:
<select name="type" reg="[^-1]" tip="一定要选择">
          <option value="-1">--请选择付款类型--</option>
          <option value="1">支出款</option>
          <option value="0">收入款</option>
</select>
用了后选择<option value="1">支出款</option>又不能通过验证了
91 楼 wangking717 2011-02-10  
hp3325 写道
呵呵,一直在试用,当<select name="type" reg="[^0]" tip="一定要选择">
          <option value="1">支出款</option>
          <option value="0">收入款</option>
        </select>
这样时,验证不能通过,因为value="0"这个也是空,又不能改="0"时验证的正则应该如何表达?



如果你的选项里的数值0为正常选项数值的话,你可以选择0以下的数值作为未选择的数值,如:
<select name="type" reg="[^-1]" tip="一定要选择">
          <option value="-1">--请选择付款类型--</option>
          <option value="1">支出款</option>
          <option value="0">收入款</option>
</select>
90 楼 hp3325 2011-02-09  
呵呵,一直在试用,当<select name="type" reg="[^0]" tip="一定要选择">
          <option value="1">支出款</option>
          <option value="0">收入款</option>
        </select>
这样时,验证不能通过,因为value="0"这个也是空,又不能改="0"时验证的正则应该如何表达?
89 楼 wangking717 2011-01-29  
hp3325 写道
$(function(){
$("[name='cb']").each(function(){
$(this).addClass("input_validation-failed");
});

});
这个有必要吗?

这个没用,你删除了吧。。我会更新删除那个多余的DEMO代码。以免误导,呵呵~ 谢谢反馈。
88 楼 hp3325 2011-01-28  
$(function(){
$("[name='cb']").each(function(){
$(this).addClass("input_validation-failed");
});

});
这个有必要吗?
87 楼 wangking717 2011-01-28  
hp3325 写道
hp3325 写道
我试了文本框输入:
<textarea name="myeara" reg="^\w+$" tip="不能为空" cols="40" rows="5">菜网付11715+预付1月5000</textarea>,验证时不能通过是为什么?如果要验证此类文本框还有何办法?
还有Ajax验证在GB2312下返回乱码,能不能加个判断哈的

就是想验证此类文本框不为空的正则写法,演示里的那个reg="^\w+$"不行

将reg="^\w+$"改为reg="^.+$"就行了,我正则没写好。
至于你提到的中文乱码问题已解决。这个跟EASYVALIDATOR本身没多大关系,主要是AJAX远程情况的程序编码设置有关系。比如DEMO下载包里有validate_user.php,设置编码GB2312,header("Content-Type:text/html;charset=GB2312");就可以正常显示了,一般编码是多方面原因导致。
86 楼 hp3325 2011-01-27  
hp3325 写道
我试了文本框输入:
<textarea name="myeara" reg="^\w+$" tip="不能为空" cols="40" rows="5">菜网付11715+预付1月5000</textarea>,验证时不能通过是为什么?如果要验证此类文本框还有何办法?
还有Ajax验证在GB2312下返回乱码,能不能加个判断哈的

就是想验证此类文本框不为空的正则写法,演示里的那个reg="^\w+$"不行
85 楼 hp3325 2011-01-27  
我试了文本框输入:
<textarea name="myeara" reg="^\w+$" tip="不能为空" cols="40" rows="5">菜网付11715+预付1月5000</textarea>,验证时不能通过是为什么?如果要验证此类文本框还有何办法?
还有Ajax验证在GB2312下返回乱码,能不能加个判断哈的
84 楼 332602833 2010-12-31  
中文字符验证不行啊,该咋个解决呢?


解决了哈,我把ajax发送方式改为了POST。
83 楼 332602833 2010-12-27  
非常不错的插件,请问下,我验证数字的时候,怎样同时验证数字大小呢?

比如必须填写2位数字且必须小于30.


自己搞定了哈  用正则  reg="^(([0-9]{1})|(10))$"
82 楼 dengjianqiang200 2010-12-13  
jquery.validate.js这个插件也不错,很好用,而且扩展性也很强。

http://www.woiweb.net/category/jquery/
81 楼 chenxizhiyi 2010-12-10  
感谢楼主,非常好用。就是我自己本来不怎么会写正则表达式,看来要学习正则了。

用的时候还有个小插曲,我把reg和tip都写好之后,测试的时候就发现提示的气泡能够出来,但是提示的字却看不到。费解了很久之后,发现是tip里的样式跟我本来的样式有些冲突,把tip里的样式修改之后就好了,呵呵
80 楼 wangking717 2010-12-05  
mynameshb 写道
问个问题,如果我用普通button提交,没有验证呢

当初开发这个插件的时候只考虑了submit的情况。你那种就是想用button调用js function来额外扩展的一些处理,然后再提交,对吧、、、
然后是这样的话,那么你可以试试
引用

5. 扩展函数表单验证(某些业务特殊需求):
    这些特殊需求都是根据业务来的,这里列举一下这样的情况:
    1.checkbox选择框数量验证,如限制别人至少选择1个,最多选择5个checkbox。
    2.多个表单之间进行比较,如【开始时间表单】一定小于等于【结束时间表单】或者两个密码表单要相等,用于注册的时候,等等。
由于这种情况的特殊性,所以用户得自己写业务逻辑代码,官方已经提供了extendsValidate扩展函数,在里面写自己的逻辑代码即可。
扩展函数表单验证DEMO:http://easyvalidator.googlecode.com/svn/trunk/extends_demo.html



讲那些特殊的JS处理模块加入到扩展函数验证那里。。
79 楼 mynameshb 2010-12-05  
问个问题,如果我用普通button提交,没有验证呢
78 楼 wangking717 2010-12-01  
Ivanwen 写道
楼主,页面有两个form,按照你的Demo做,还是会全部检测,用不用设置什么

不用设置什么,只要确定两个FORM之间没有交集就可以了,也就是说不要一个FORM包含了另外一个FORM,相对独立,SUBMIT提交的时候,会在包含自己的FORM下的所有控件进行验证。
77 楼 Ivanwen 2010-11-30  
楼主,页面有两个form,按照你的Demo做,还是会全部检测,用不用设置什么
76 楼 carus 2010-11-21  
先下来看看,以后可以用得到

相关推荐

    jQuery表单验证插件EasyValidator 2.0带TIP提示效果

    总的来说,jQuery表单验证插件EasyValidator 2.0以其强大的功能和易用性,为开发者提供了高效且用户友好的表单验证解决方案。结合TIP提示效果,它能够极大地提升表单的交互性和用户体验,是构建高质量Web应用的得力...

    JQuery表单验证插件easyvalidator

    首先,你需要在项目中引入jQuery库,然后下载或通过CDN链接获取EasyValidator插件的JS文件。在HTML文件中,将它们放置在`&lt;head&gt;`或`&lt;body&gt;`标签内,确保jQuery在EasyValidator之前加载。 ```html ...

    jquery表单验证插件EasyValidator

    jQuery EasyValidator是一款强大且易用的表单验证插件,专门用于简化前端验证流程。本文将深入探讨该插件的特性和使用方法。 ### 一、简介 jQuery EasyValidator是基于jQuery库的,它通过简单的API就能实现复杂的...

    转 推荐一个超级简单的JQuery表单验证插件EasyValidator

    今天我们要探讨的是一个名为EasyValidator的JQuery插件,它为开发者提供了一种超级简单的表单验证解决方案。这个插件简化了原本繁琐的验证过程,使得网页表单的验证变得更加高效和便捷。 EasyValidator是由...

    jquery表单验证插件

    ### jQuery表单验证插件详解 #### 一、概述 jQuery表单验证插件是一种用于简化Web表单处理过程的强大工具。它不仅能够帮助开发者轻松地实现表单数据的Ajax提交,还支持文件上传等功能,极大地提升了用户体验并降低...

    Java Web Jquery表单验证

    编写基于Jquery的表单验证插件 Java Web Jquery表单验证 jQuery是一个流行的JavaScript库,可用于在网页上进行各种操作,包括表单验证。 1、将基于Jquery的表单验证的调查问卷分为四个部分:FrontPage.html、write....

    JQuery表单验证插件EasyValidator用法分析

    JQuery表单验证插件EasyValidator是一款高效且易于使用的工具,它专为简化JavaScript表单验证而设计。该插件的核心理念是让用户无需编写复杂的JavaScript验证代码,而是通过在HTML表单元素上添加特定属性,即可实现...

    【原创】jquery表单验证插件

    本人制作的jquery表单验证插件JfomValidate 功能:可以完成绝大数页面的脚本验证效果,压缩包里有示例和调用说明。 压缩包包含文件: index.html -- 说明及示例 JfomValidate.min.js -- 插件 jquery-1.3.2.min.js -...

    jQuery表单验证插件

    **jQuery表单验证插件详解** 在Web开发中,表单验证是不可或缺的一部分,它确保用户输入的数据符合预设的规则,从而提高用户体验并减少服务器端的负担。jQuery,一个轻量级、高性能的JavaScript库,提供了丰富的API...

    表单验证jquery插件

    jQuery Validation Engine 是一个功能强大的表单验证插件,以其简单易用和丰富的自定义选项而受到开发者的青睐。 ## 1. jQuery Validation Engine 插件简介 jQuery Validation Engine 是一款基于 jQuery 库的验证...

    前端js,jQuery表单验证插件

    前端js,jQuery表单验证插件

    jQuery表单验证大全

    jQuery,作为一款广泛使用的JavaScript库,提供了强大的表单验证插件——jQuery Validate,使得表单验证变得简单易行。本文将深入探讨jQuery表单验证的相关知识点,帮助开发者更好地理解和应用这一功能。 1. **...

Global site tag (gtag.js) - Google Analytics