内容目录
jQuery Validator的after
后置处理器用于在每次完成当前规则校验之后进行后续处理。
如果指定了after
后置处理器,无论当前规则校验通过与否,jQuery Validator都会执行该后置处理器。
语法
jQuery Validator 1.0 新增。
// 在校验规则对象中指定该属性
after: handler
参数
参数 | 描述 |
---|---|
handler | Function类型指定的后置处理函数。 |
如果在校验规则中指定了后置处理器after
,jQuery Validator会在执行输入预处理和校验之后调用该处理器函数。
在调用函数时,jQuery Validator会为其传入如下所示的参数:
after: function(result, context){
// result 表示本次校验结果:true表示通过,false表示不通过
// context 表示本次校验的上下文对象
// this 指向当前jQuery Validator实例
}
目前,after
后置校验器的返回值没有任何作用。
示例&说明
以如下HTML表单为例:
<form action="https://codeplayer.vip/">
<div>
<label>身份证号码</label>:
<input id="idcard" name="idcard" type="text" >
</div>
<div>
<label>性别</label>:
<select id="gender" name="gender">
<option value="">==请选择==</option>
<option value="1">男</option>
<option value="0">女</option>
</select>
</div>
<input type="submit" value="提交" />
</form>
我们可以使用before
后置处理器完成如下校验:运行代码
// 在表单提交时执行校验
$("form").v("submit", {
"#idcard": {
extend: "idcard", // 继承idcard属性
after: function(result, context){
// 如果身份证号码合法,直接根据身份证号码获取性别
if(result){
var male = "13579".indexOf(context.value.charAt(16)) != -1;
$("#gender").val(male ? "1" : "0");
}
}
},
"#gender": "required"
});
0 条评论
撰写评论