修改jQuery Validation里默认的验证方法需要重写或扩展Validator方法,以下是详细攻略:
步骤1:引入jQuery Validation插件
首先,在html文件中引入jQuery和jQuery Validation插件
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script src="https://cdn.jsdelivr.net/jquery.validation/1.16.0/jquery.validate.min.js"></script>
步骤2:重写或扩展Validator方法
2.1 重写Validator方法
例如,我们想重写required验证方法,我们可以使用addMethod
方法重写,如下所示:
// 重写required验证方法
$.validator.addMethod('required', function(value, element, param){
return value !== '' && value !== null && value !== undefined;
}, '该字段为必填项');
解释一下上述代码:
addMethod
方法接受四个参数,分别是:验证方法的名称(必填)、一个匿名函数、提示信息、[可选参数]。- 匿名函数的三个参数分别是:被验证元素的值,被验证元素本身,参数(可选,数组的形式)。
- 匿名函数返回true或false,true表示验证通过,false表示验证失败。
- 第三个参数为验证失败时的提示信息。
2.2 扩展Validator方法
以扩展phone验证方法为例,我们可以使用addMethod
方法扩展,如下所示:
// 扩展phone验证方法
$.validator.addMethod('phone', function(value, element){
return this.optional(element) || /^1[34578]\d{9}$/.test(value)
}, '请输入正确的手机号格式');
解释一下上述代码:
/^1[34578]\d{9}$/
是正则表达式,用于验证手机号格式。optional
方法是验证器内置方法,用于判断某个元素是否为空。- 此处第三个参数为验证失败时的提示信息。
步骤3:使用修改后的验证方法
在表单验证时使用修改后的验证方法即可,如下所示:
$("form").validate({
// 表单验证规则
rules: {
name: {
required: true, // 重写
minlength: 2
},
phone: {
phone: true // 扩展
},
email: {
email: true // 原有方法
}
},
// 提示信息
messages: {
name: {
required: "姓名不能为空",
minlength: "至少输入2个字符"
}
}
});
从上述示例中可以看出,我们可以在rules中指定表单元素的验证规则,包括使用了修改后的验证方法。
以上就是修改jQuery Validation里默认的验证方法的完整攻略,希望对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:修改jQuery Validation里默认的验证方法 - Python技术站