【发布时间】:2012-05-29 08:10:05
【问题描述】:
我有一个包含以下两个 HTML 元素的表单:
<input type="text" name="vrm" id="vrm" size="15" maxlength="15" value="" />
<input type="checkbox" id="foreign_registration" name="foreign_registration" value="yes" />
以及以下 jQuery 验证规则(使用此处的验证插件:http://bassistance.de/jquery-plugins/jquery-plugin-validation/):
vrm: {
remote: {
url: "/json/vrm-validate.php",
data: {
foreign_registration: function() {
return $('#foreign_registration').is(':checked');
}
}
}
}
远程脚本依赖于这两个字段,因为对文本字段执行的验证取决于是否检查了外国注册。
问题是,如果我在文本字段中输入内容然后更改复选框,验证规则不会重新运行。我认为这是因为验证规则只附加到文本字段,所以它只会在更改时运行。
有没有办法说“这两个元素是相关的,所以如果它们中的任何一个发生变化,就假设应该再次检查文本字段规则”?我不想给复选框附加任何验证规则,因为它不需要在客户端进行验证,并且远程脚本执行的验证规则太复杂,无法在 jQuery 中实现。
【问题讨论】:
标签: jquery jquery-plugins jquery-validate