各种jquery校验

束福
2023-12-01

ajax验证做成函数,可用于下拉框验证好 展示 提示信息

function checkUser() {
var deferred = $.Deferred();//创建一个延迟对象
$.ajax({
url: ctx + “order/orderProgramme/currencyUniqueness?orderTerminalId=” + $("#orderTerminalId").val() + “&orderMainbranchId=” + $("#orderMainbranchId").val(),
async: false,//要指定不能异步,必须等待后台服务校验完成再执行后续代码
dataType: “json”,
success: function (data) {
if (data) {
deferred.resolve();
} else {
deferred.reject();
}
}
});
//deferred.state()有3个状态:pending:还未结束,rejected:失败,resolved:成功
return deferred.state() == “resolved” ? true : false;
}
提交前验证

function submitHandler() {
if(!checkUser()){
KaTeX parse error: Expected 'EOF', got '}' at position 42: …在,请重新设置!") }̲else if (.common.isEmpty($("#orderTerminalId").val())) {
KaTeX parse error: Expected 'EOF', got '}' at position 35: …货运站不能为空!") }̲else if (.validate.form()) {
$.operate.save(prefix + “/edit”, $(’#form-orderProgramme-edit’).serialize());
}
}
ajax验证 后台返回 false提示信息 返回 true 通过不提示信息

jQuery.validator.addMethod(“currencyUnique”, function(value, element) {
var deferred = $.Deferred();//创建一个延迟对象
$.ajax({
url:ctx + “order/orderProgramme/currencyUniqueness?orderTerminalId=” + $("#orderTerminalId").val() + “&orderMainbranchId=” + KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲orderMainbranch…/;
return this.optional(element) || (tel.test(value));
},“请输入英文字母或汉字!”);

// 手机号码验证
jQuery.validator.addMethod(“isPhone”, function(value, element) {
var length = value.length;
return this.optional(element) || (length == 11 && /^(((13[0-9]{1})|(15[0-9]{1})|(17[0-9]{1})|(18[0-9]{1}))+\d{8})$/.test(value));
}, “请正确填写您的手机号码!”);

//身份证号码验证
jQuery.validator.addMethod(“isCardNo”, function(value, element) {
var idcardReg = /1\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}KaTeX parse error: Undefined control sequence: \d at position 8: |^[1-9]\̲d̲{5}[1-9]\d{3}((…/;
return this.optional(element) || (idcardReg.test(value));
}, “请正确合法的身份证号码!”);

//营业执照编号
jQuery.validator.addMethod(“isBusinessNo”, function(value, element) {
var length = value.length;
return this.optional(element) || (15 <= length <= 18 &&/2{15,18}KaTeX parse error: Expected 'EOF', got '}' at position 17: ….test(value)); }̲, "请输入(15~18)位的…/;
return this.optional(element) || (tel.test(value));
}, “电话号码格式错误”);

// 邮政编码验证
jQuery.validator.addMethod(“zipCode”, function(value, element) {
var tel = /3{6}$/;
return this.optional(element) || (tel.test(value));
}, “邮政编码格式错误”);

// QQ号码验证
jQuery.validator.addMethod(“qq”, function(value, element) {
var tel = /4\d{4,9}$/;
return this.optional(element) || (tel.test(value));
}, “qq号码格式错误”);

// IP地址验证
jQuery.validator.addMethod(“ip”, function(value, element) {
var ip = /^(??:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)/; return this.optional(element) || (ip.test(value) && (RegExp./; return this.optional(element) || (ip.test(value) && (RegExp.1 < 256 && RegExp.2 < 256 && RegExp.2 < 256 && RegExp.3 < 256 && RegExp.KaTeX parse error: Expected 'EOF', got '}' at position 12: 4 < 256)); }̲, "Ip地址格式错误"); …/;
return this.optional(element) || (chrnum.test(value));
}, “只能输入数字和字母(字符A-Z, a-z, 0-9)”);
// 下拉框验证
$.validator.addMethod(“selectNone”, function(value, element) {
return value == “请选择”;
}, “必须选择一项”);
// 字节长度验证
jQuery.validator.addMethod(“byteRangeLength”, function(value, element, param) {
var length = value.length;
for (var i = 0; i < value.length; i++) {
if (value.charCodeAt(i) > 127) {
length++;
}
}
return this.optional(element) || (length >= param[0] && length <= param[1]);
}, $.validator.format(“请确保输入的值在{0}-{1}个字节之间(一个中文字算2个字节)”));
其实主要还是正则表达式:

1、匹配中文:[\u4e00-\u9fa5]

2、英文字母:[a-zA-Z]

3、数字:[0-9]

4、匹配中文,英文字母和数字及下划线:5+$
同时判断输入长度:[\u4e00-\u9fa5_a-zA-Z0-9_]{4,10}

5、不能以“”开头:(?!)
不能以“”结尾:(?!.*? ) 与 字 符 串 结 束 的 地 方 匹 配 : ) 与字符串结束的地方匹配: )

6、只含有汉字、数字、字母、下划线,下划线位置不限:6+$

7、由数字、26个英文字母或者下划线组成的字符串:^\w+$

8、最长不得超过7个汉字,或14个字节(数字,字母和下划线)正则表达式:7{1,7}KaTeX parse error: Undefined control sequence: \dA at position 4: |^[\̲d̲A̲-Za-z_]{1,14}

9、验证以字母开头,长度在6-18之间,只能包含字符、数字和下划线:8w{5,17}$

10、验证是否含有^%&’,;=?KaTeX parse error: Expected group after '^' at position 7: "等字符:[^̲%&',;=?x22]+$

11、验证一年的12个月:^(0?[1-9]|1[0-2])$

12、验证一个月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$

13、匹配双字节字符(包括汉字在内):[^x00-xff]

14、匹配HTML标记的正则表达式:/<(.)>.|<(.*) />/

15、匹配首尾空格的正则表达式:(^s*)|(s*$)

16、匹配Email地址的正则表达式:w+([-+.]w+)@w+([-.]w+).w+([-.]w+)*

17、匹配网址URL的正则表达式:http://([w-]+.)+[w-]+(/[w- ./?%&=]*)?

原文链接:https://blog.csdn.net/qq_42307369/article/details/100984930


  1. 1-9 ↩︎

  2. A-Za-z0-9 ↩︎

  3. 0-9 ↩︎

  4. 1-9 ↩︎

  5. \u4e00-\u9fa5_a-zA-Z0-9 ↩︎

  6. a-zA-Z0-9_\u4e00-\u9fa5 ↩︎

  7. \u4e00-\u9fa5 ↩︎

  8. a-zA-Z ↩︎

 类似资料: