近段时间做的项目遇到好多的文本框验证,类型太多,而一味的写验证,感觉有太麻烦,所以自己又重新学习整理了些常用的验证,希望对大家有所帮助。
好了,废话不多说,下面让我们切入正题。
首先,让我们先看下EasyUI的验证规则:
<input id="vv" required="true" validType="email">
$('#vv').validatebox({ required:true });
<input id="vv" class="easyui-validatebox" data-options="required:true,validType:'email'" />
验证规则
验证规则是通过使用 required 和 validType 特性来定义的, 这里是已经实施的规则:
email:匹配 email 正则表达式规则
url:匹配 URL 正则表达式规则
length[0,100]:允许从 x 到 y 个字符
remote['http://.../action.do','paramName']:发送 ajax 请求来验证值,成功时返回 'true' 。
看到这里,相信大家很多用过EasyUI验证的码农都或多或少用过,但是EasyUI本身自带的验证有限,我们又怎么进行符合自己需求进行扩展呢?
自定义规则扩展
同样的我们先来看看自定义规则:
不得不说的是在这里需要用到JQuery的extend扩展方法。 Jquery的扩展方法extend是我们在写插件的过程中常用的方法,该方法有一些重载原型,在此,我们也一起去了解了解。
http://www.cnblogs.com/RascallySnake/archive/2010/05/07/1729563.html
看了上面的规则,相信大家已经懂了很多了,下面看下文档的一个简单举例吧,
$.extend($.fn.validatebox.defaults.rules, { minLength: { validator: function(value, param){ return value.length >= param[0]; }, message: 'Please enter at least {0} characters.' } });
<input class="easyui-validatebox" data-options="validType:'minLength[5]'">
下面是各种校验总结:
/** * auther by heands * * date : 2016 - 1 -2 */ $.extend($.fn.validatebox.defaults.rules, { minLength : { // 判断最小长度 validator : function(value, param) { return value.length >= param[0]; }, message : '最少输入 {0} 个字符。' }, length:{validator:function(value,param){ var len=$.trim(value).length; return len>=param[0]&&len<=param[1]; }, message:"内容长度介于{0}和{1}之间." }, phone : {// 验证电话号码 validator : function(value) { return /^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$/i.test(value); }, message : '格式不正确,请使用下面格式:020-88888888' }, mobile : {// 验证手机号码 validator : function(value) { return /^(13|15|18)\d{9}$/i.test(value); }, message : '手机号码格式不正确(正确格式如:13450774432)' }, phoneOrMobile:{//验证手机或电话 validator : function(value) { return /^(13|15|18)\d{9}$/i.test(value) || /^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$/i.test(value); }, message:'请填入手机或电话号码,如13688888888或020-8888888' }, idcard : {// 验证身份证 validator : function(value) { return /^\d{15}(\d{2}[A-Za-z0-9])?$/i.test(value); }, message : '身份证号码格式不正确' }, floatOrInt : {// 验证是否为小数或整数 validator : function(value) { return /^(\d{1,3}(,\d\d\d)*(\.\d{1,3}(,\d\d\d)*)?|\d+(\.\d+))?$/i.test(value); }, message : '请输入数字,并保证格式正确' }, currency : {// 验证货币 validator : function(value) { return /^d{0,}(\.\d+)?$/i.test(value); }, message : '货币格式不正确' }, qq : {// 验证QQ,从10000开始 validator : function(value) { return /^[1-9]\d{4,9}$/i.test(value); }, message : 'QQ号码格式不正确(正确如:453384319)' }, integer : {// 验证整数 validator : function(value) { return /^[+]?[1-9]+\d*$/i.test(value); }, message : '请输入整数' }, chinese : {// 验证中文 validator : function(value) { return /^[\u0391-\uFFE5]+$/i.test(value); }, message : '请输入中文' }, english : {// 验证英语 validator : function(value) { return /^[A-Za-z]+$/i.test(value); }, message : '请输入英文' }, unnormal : {// 验证是否包含空格和非法字符 validator : function(value) { return /.+/i.test(value); }, message : '输入值不能为空和包含其他非法字符' }, username : {// 验证用户名 validator : function(value) { return /^[a-zA-Z][a-zA-Z0-9_]{5,15}$/i.test(value); }, message : '用户名不合法(字母开头,允许6-16字节,允许字母数字下划线)' }, faxno : {// 验证传真 validator : function(value) { // return /^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/i.test(value); return /^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$/i.test(value); }, message : '传真号码不正确' }, zip : {// 验证邮政编码 validator : function(value) { return /^[1-9]\d{5}$/i.test(value); }, message : '邮政编码格式不正确' }, ip : {// 验证IP地址 validator : function(value) { return /d+.d+.d+.d+/i.test(value); }, message : 'IP地址格式不正确' }, name : {// 验证姓名,可以是中文或英文 validator : function(value) { return /^[\u0391-\uFFE5]+$/i.test(value)|/^\w+[\w\s]+\w+$/i.test(value); }, message : '请输入姓名' }, carNo:{ validator : function(value){ return /^[\u4E00-\u9FA5][\da-zA-Z]{6}$/.test(value); }, message : '车牌号码无效(例:粤J12350)' }, carenergin:{ validator : function(value){ return /^[a-zA-Z0-9]{16}$/.test(value); }, message : '发动机型号无效(例:FG6H012345654584)' }, email:{ validator : function(value){ return /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(value); }, message : '请输入有效的电子邮件账号(例:abc@126.com)' }, msn:{ validator : function(value){ return /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(value); }, message : '请输入有效的msn账号(例:abc@hotnail(msn/live).com)' },department:{ validator : function(value){ return /^[0-9]*$/.test(value); }, message : '请输入部门排序号(例:1)' },same:{ validator : function(value, param){ if($("#"+param[0]).val() != "" && value != ""){ return $("#"+param[0]).val() == value; }else{ return true; } }, message : '两次输入的密码不一致!' } });
http://asialee.iteye.com/blog/2001239
相关推荐
《EasyUI验证扩展详解》 在Web开发中,数据验证是不可或缺的一环,它确保了用户输入的有效性和系统的稳定性。EasyUI,一个基于jQuery的UI框架,提供了丰富的组件和便捷的验证功能。本文将深入探讨“EasyUI验证扩展...
easyui扩展的js验证,是对easyUI没有的验证做的补充扩展,好用方便
5. **其他扩展功能**:除了以上提到的,扩展可能还包括对其他组件的增强,例如下拉菜单(combobox)、树形结构(tree)、表单验证(form validation)等。这些增强可能涉及到性能优化、新功能添加或现有功能的定制化...
4. 校验规则的扩展:EasyUI的validatebox默认提供了有限的校验规则,但可以通过扩展来添加更多自定义的校验规则。例如,可以添加对身份证号码、整数和合法数字的校验。 5. 自定义校验规则的实现:通过在validatebox...
同时,为了验证用户输入的数据,可以结合使用`onBeforeEdit`和`onAfterEdit`事件来进行数据校验。 此外,考虑到标签中提到了“源码”,这可能意味着你可以在博客链接(虽然这里给出的链接是无效的,但通常情况下,...
#### 二、JQuery easyUI验证规则扩展 在JQuery easyUI中,可以通过`.extend()`方法对`$.fn.validatebox.defaults.rules`对象进行扩展,添加自定义的验证规则。下面将逐一介绍文档中给出的一些典型验证规则及其正则...
### easyui验证框使用方法详解 #### 一、概述 EasyUI是一款基于jQuery的用户界面插件集合,它简化了Web应用开发中的交互组件创建过程。其中,验证框(ValidateBox)是EasyUI中用于输入验证的一个强大工具,能够帮助...
jquery easyui validator 扩展自定义验证方法
在"jQuery EasyUI 扩展(tip和form)"这个主题中,我们将深入探讨如何利用 EasyUI 的扩展功能来优化提示(tip)和表单(form)的交互体验。 首先,让我们谈谈“Tip”。在 Web 开发中,提示信息通常用于向用户提供即时...
EasyUI的Treegrid扩展是一种对原生EasyUI TreeGrid组件的功能增强,主要目的是提供更加灵活的数据展示和操作方式。在传统的TreeGrid中,数据通常是以树状结构展示,每一行都可以展开或折叠,显示或隐藏子节点。然而...
### 自定义jQuery EasyUI验证规则详解 在进行前端表单验证时,为了提供更好的用户体验以及增强数据的有效性和安全性,我们通常会使用各种前端框架提供的工具。jQuery EasyUI 是一个基于 jQuery 的用户界面插件集合...
通过上述提供的校验方法,开发者可以根据实际需求,在Jquery Easyui验证扩展中添加更多自定义的校验规则,以满足各种复杂的验证场景。需要注意的是,由于文档部分文字由OCR扫描出现识别错误或漏识别,因此在实际应用...
除了这两个问题,我们还可以进一步扩展 EasyUI validatebox 的功能以适应更多的验证需求。例如,通过自定义规则来实现更复杂的验证逻辑: ```javascript $.extend($.fn.validatebox.defaults.rules, { custom_reg:...
ValidateBox 也允许用户自定义验证规则,例如可以使用 jQuery 的 extend 方法来扩展 ValidateBox 的规则,例如可以添加身份证号码、电话号码、手机号码等验证规则。 EasyUI 的 ValidateBox 验证组件提供了多种类型...
文档"扩展easyUI 上传文件时附加参数.docx"应该包含了更详细的实现细节和示例代码,你可以参考该文档进一步了解扩展过程和具体的代码实现。在扩展EasyUI时,务必遵循其API规范,保持代码的可维护性和兼容性,同时也...
基于EasyUI 官方的帮助。 Application 使用easyUI创建一个CRUD的应用 使用easyUI创建一个CRUD DataGrid... easyui Form验证 easyUI 格式化ComboBox easyui 过滤ComboGrid 扩展 easyui DWR加载 easyUI 主题
jquery easyui 改进版,增加了一些验证等
2. 测试验证:通过查看和运行Demo,开发者可以在实际环境中测试组件的功能和性能,确保其符合项目需求。 五、源码分析 源码对于高级开发者来说,是一份宝贵的资源。通过阅读和研究源码,可以深入了解组件的工作...