1. 开发中需要对etl组件统一进行input输入框校验,允许为空,可以不校验,默认校验长度和特殊字符,代码如下,记录以备复用
/**
* 数据值校验工具类
*/
var checkService = {
// 不校验
none: function () {
return true;
},
//非空校验
isEmpty:function (str) {
if (str == null || str == "") return false;
},
// 只能输入数字[0-9]
isDigits: function (str) {
if (str == null || str == "") return true;
var reg = /^\d+$/;
return reg.test(str);
},
// 匹配english
isEnglish: function (str) {
if (str == null || str == "") return true;
var reg = /^[A-Za-z]+$/;
return reg.test(str);
},
// 匹配integer(包含正负)
isInteger: function (str) {
if (str == null || str == "") return true;
var reg = /^[-\+]?\d+$/;
return reg.test(str);
},
// 匹配汉字
isChinese: function (str) {
if (str == null || str == "") return true;
var reg = /^[\u4e00-\u9fa5]+$/;
return reg.test(str);
},
// 匹配中文(双字节字符,包括汉字和符号)
isChineseChar: function (str) {
if (str == null || str == "") return true;
var reg = /^[\u0391-\uFFE5]+$/;
return reg.test(str);
},
// 匹配URL
isUrl: function (str) {
if (str == null || str == "") return true;
var reg = /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\’:+!]*([^<>\"])*$/;
return reg.test(str);
},
// 字符验证,只能包含中文、英文、数字、下划线、空格。
stringCheck: function (str) {
if (str == null || str == "") return true;
var reg = /^[a-zA-Z0-9\u4e00-\u9fa5_ ]+$/;
return reg.test(str);
},
//字符长度校验(最长64位)
stringLengthCheck: function (str, length) {
if (str == null || str == "") return true;
length = length || 64;
if (str.length > length) return false;
return true;
},
//IP格式验证
isIP: function (str) {
if (str == null || str == "") return true;
var reg = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/;
return reg.test(str);
}
};
var reg = new RegExp("^(([1-9][0-9]{0,3})(\.[0-9]{0,3})?)$"); //只能输入非0开头,小数点前最大4位数,后最大3位数的数字,有个问题就是输入特殊符号校验照样通过,所以有了下面这个一起连着使用
var reg1 = /^\d+$|^\d*\.\d+$/g; //只能输入数字和小数点,其他任何都不通过
if (!reg.test(no) || !reg1.test(no)) {
alert("请输入正确的数量!");
}