我有一个远程验证器设置如下
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";
}
}
}如果旁路是“是”,则ajax总是返回true。
它工作在模糊和提交,但如果我重置单选按钮值然后提交,它不会重新验证。
例如,
有什么办法让它正常工作吗?
发布于 2011-04-10 09:57:03
如果您查看jquery.validate.js中的第897行,您将看到一个优化:
if ( previous.old !== value ) {
如果字段的值没有更改,这一行将阻止新的验证。由于您使用的是validate().element(),所以它只检查该字段,而不是整个表单,因此它不会检测到toggleBypass中的变化。
要么从jquery.validate源中删除此检查,要么检查整个表单,而不仅仅是该字段。
https://stackoverflow.com/questions/5592454
复制相似问题