Alt*_*ice 5 javascript jquery jquery-validate
我有一个像这样的远程验证器设置
remote: {
type: "POST",
url: "/some/url",
data: {
value: function() {
return $("#field").val();
},
bypass: function() {
if ($("input:radio[name=toggleBypass]:checked").val() == "yes"){
return "yes";
}
return "no";
}
}
}
Run Code Online (Sandbox Code Playgroud)
如果bypass为“ yes”,则ajax始终返回true。
它适用于模糊和提交,但是如果我重设单选按钮的值然后提交,则不会重新验证。
例如,
有什么想法可以使它正常工作吗?
如果你查看 jquery.validate.js 中的第 897 行,你会看到一个优化:
if ( previous.old !== value ) {
如果字段的值未更改,则此行将阻止新的验证。由于您使用的是validate().element(),因此它只检查该字段,而不是整个表单,因此它不会检测toggleBypass 中的更改。
要么从 jquery.validate 源中删除此检查,要么检查整个表单,而不仅仅是该字段。
| 归档时间: |
|
| 查看次数: |
999 次 |
| 最近记录: |