【esayui】扩展验证方法,控件验证

简介: 基础验证 //页面调用方法$.extend($.fn.validatebox.defaults.rules, { 验证电话 IsPhoneRex: {validator: function (value) {var rex = /^1[3-8]+\d{9}$/;var rex2 = /^((0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/;if (rex.

基础验证

//页面调用方法
$.extend($.fn.validatebox.defaults.rules, {

验证电话

IsPhoneRex: {
validator: function (value) {
var rex = /^1[3-8]+\d{9}$/;
var rex2 = /^((0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/;
if (rex.test(value) || rex2.test(value)) {
// alert('t'+value);
return true;
} else {
//alert('false '+value);
return false;
}

},
message: '请输入正确电话或手机格式'
},

最大最小长度提示

maxLength: {
validator: function (value, param) {
return value.length <= param[0];
},
message: '最大长度为{0}字符'
},
minLength: {
validator: function (value, param) {
return value.length >= param[0];
},
message: '最小长度为{0}字符'
},

长度在什么之间

lengthLimit: {
validator: function (value, param) {
return value.length >= param[0] && value.length <= param[1];
},
message: '字符长度必须介于{0}和{1}之间'
},

验证货币

IsCurrency: {
validator: function (value) {
return /^\d+(\.\d+)?$/i.test(value);
},
message: '货币格式不正确'
},

 验证中文

IsChinese: {
validator: function (value) {
return /^[\Α-\¥]+$/i.test(value);
},
message: '请输入中文'
},

验证登录名

loginName: {
validator: function (value, param) {
return /^[\u0391-\uFFE5\w]+$/.test(value);
},
message: '登录名称只允许汉字、英文字母、数字及下划线。'
},

验证英语

IsEnglish: {
validator: function (value) {
return /^[A-Za-z]+$/i.test(value);
},
message: '请输入英文'
},

 验证是否包含空格和非法字符

IsNnnormal: {
validator: function (value) {
return /.+/i.test(value);
},
message: '输入值不能为空和包含其他非法字符'
},

验证中文,英文,数字

stringCheckSub: {
validator: function (value) {
return /^[a-zA-Z0-9\u4E00-\u9FA5]+$/.test(value);
},
message: "只能包括中文字、英文字母、数字"
},

验证只运行输入字母或者数字

IsNumberOrLetter: {
validator: function (value) {
return /^[0-9a-zA-Z]+$/.test(value);
},
message: '只能包含数字或者字母'
},

验证数字

IsNumber: {
validator: function (value, param) {
return /^[+|-]{0,1}(\d+)$|^[+|-]{0,1}(\d+\.\d+)$/.test(value);
},
message: '请输入合法数字'
},

验证数字范围

IsNumberF: {
validator: function (value, param) {
return (/^[+|-]{0,1}(\d+)$|^[+|-]{0,1}(\d+\.\d+)$/.test(value) && value <= 30 && value >= -30 && /^[+|-]{0,1}([1-9]\d*|[0]{1,1})$/.test(value / 0.5));
},
message: '请输入-30到30数字'
},

验证数值扩展位数限制

IsNumberDigit: {
validator: function (value, param) {
if (/(^[1-9]\d*$)/.test(value)) {
return (/^[+|-]{0,1}(\d+)$|^[+|-]{0,1}(\d+\.\d+)$/.test(value) && value.length < param[0] + 1);
}
return (/^[+|-]{0,1}(\d+)$|^[+|-]{0,1}(\d+\.\d+)$/.test(value) && value.length < param[0] + 2);
},
message: '最多输入{0}位数值类型'
},

验证整数数字

IsIntNumber: {
validator: function (value, param) {
return /^-?\d+$/.test(value) && value > 0;
},
message: '请输入整数数字'
},

验证正数数字

IsPlusNumber: {
validator: function (value, param) {
return /^[+]{0,1}(\d+)$|^[+]{0,1}(\d+(\.\d{1,2})?)$/.test(value) && value > 0;
},
message: '请输入合法正数数字'
},

验证正数数值扩展位数限制

IsPlusNumberDigit: {
validator: function (value, param) {
if (/(^[1-9]\d*$)/.test(value)) {
return (/^[+]{0,1}(\d+)$|^[+]{0,1}(\d+(\.\d{1,2})?)$/.test(value) && value.length < param[0] + 1) && value > 0;
}
return (/^[+]{0,1}(\d+)$|^[+]{0,1}(\d+(\.\d{1,2})?)$/.test(value) && value.length < param[0] + 2) && value > 0;
},
message: '最多输入{0}位正数数值类型'
},

验证非负小数数字

IsNotLoseDecimalNumber: {
validator: function (value, param) {
return /^[+]{0,1}(\d+)$|^[+]{0,1}(\d+(\.\d{1,2})?)$/.test(value) && value >= 0;
},
message: '请输入合法非负数'
},

验证非负小数数字扩展位数限制

IsNotLoseDecimalNumberDigit: {
validator: function (value, param) {
if (/(^[1-9]\d*$)/.test(value)) {
return (/^[+]{0,1}(\d+)$|^[+]{0,1}(\d+(\.\d{1,2})?)$/.test(value) && value.length < param[0] + 1) && value >= 0;
}
return (/^[+]{0,1}(\d+)$|^[+]{0,1}(\d+(\.\d{1,2})?)$/.test(value) && value.length < param[0] + 2) && value >= 0;
},
message: '最多输入{0}位非负数'
},

验证小数位数[包含正负]

checkDecN: {
validator: function (value, param) {
return /^[+-]?\d+(\.\d{1,2})?$/.test(value);
},
message: '请输入小数位数不能超过2位的数值'
},

验证小数位数

checkDec: {
validator: function (value, param) {
return /^\d+(\.\d{1,2})?$/.test(value);
},
message: '请输入小数位数不能超过2位的数值'
},

验证小数位数增加范围

checkDecF: {
validator: function (value, param) {
return /^\d{0,8}\.{0,1}(\d{1,2})?$/.test(value) && value > 0;
},
message: '请输入大于0的数值小数位数小于2'
},

验证用户名

IsUsername: {
validator: function (value) {
return /^[a-zA-Z][a-zA-Z0-9_]{5,15}$/i.test(value);
},
message: '用户名不合法(字母开头,允许6-16字节,允许字母数字下划线)'
},

验证邮政编码

IsZip: {
validator: function (value) {
return /^[1-9]\d{5}$/i.test(value);
},
message: '邮政编码格式不正确'
},

验证年龄

IsAge: {
validator: function (value) {
return /^(?:[1-9][0-9]?|1[01][0-9]|120)$/i.test(value);
},
message: '年龄必须是0到120之间的整数'
},

select即选择框的验证

selectValid: {
validator: function (value, param) {
if (value == param[0]) {
return false;
} else {
return true;
}
},
message: '请选择'
},
});

控件调用形式

 <input  class="easyui-validatebox holiday-int" data-options="required:true,validType:'IsNumber'" maxlength="50" />

 DataGrid控件编辑验证:

只能输入正整数:

                         editor: {
                            type: 'validatebox',
                            options: {
                                validType: 'checkDecN',
                                onValidate: function (valid) {

                                },
                                onBeforeValidate: function () {
                                    $(this).attr('maxlength', 10);
                                    $(this).on("keyup", function (event) {
                                        this.value = this.value.replace(/[^\d|\.]/g, '');
                                    });

                                }
                            }
                        },
能输入整数(正负)
                            editor: {
                            type: 'validatebox',
                            options: {                               
                                validType: ['IsPlusNumber', 'checkDec', 'maxLength[10]'],
                                onBeforeValidate: function () {
                                    $(this).attr("maxlength", 10)
                                    $(this).on("keyup", function (event) {
                                        this.value = this.value.replace(/[^\+|\-|\d|\.]/g, '');
                                    });

                                }
                            }
                        },
 
validType属性可以继续使用上面的验证扩展,但是只是在页面给出提示,有时候我们想要是直接不让输入,所有就需要onBeforeValidate事件。在这个事件内做验证。

 

作者:YanBigFeg —— 颜秉锋

出处:http://www.cnblogs.com/yanbigfeg

本文版权归作者和博客园共有,欢迎转载,转载请标明出处。如果您觉得本篇博文对您有所收获,觉得小弟还算用心,请点击右下角的 [推荐],谢谢!

目录
相关文章
|
6月前
|
前端开发 算法 安全
轻松愉悦的验证方式:实现图片旋转验证功能
轻松愉悦的验证方式:实现图片旋转验证功能
186 0
|
5月前
参数验证工具
参数验证工具
34 0
|
数据安全/隐私保护
fastadmin中写接口是时Validate规则验证自定义如何用
fastadmin中写接口是时Validate规则验证自定义如何用
229 0
|
6月前
|
数据采集 存储 安全
数据功能验证
数据功能验证
111 4
|
6月前
|
JavaScript 前端开发 数据安全/隐私保护
jQuery最方便的前端验证方式2种(非空验证与比较验证)
jQuery最方便的前端验证方式2种(非空验证与比较验证)
97 0
|
6月前
|
前端开发 JavaScript 开发者
AngularJS 的输入验证机制:内置验证器、自定义验证器和显示验证信息
AngularJS 的输入验证机制:内置验证器、自定义验证器和显示验证信息
71 1
|
关系型数据库 MySQL 数据安全/隐私保护
nest自定义验证类及自定义验证装饰器
nest自定义验证类及自定义验证装饰器