我正在使用jQuery Validate表单。我需要添加一些功能,因此如果从选择/下拉菜单中选择了特定选项,则需要额外的字段。
以下是他们在jQuery网站上提供的示例,如果在复选框中选中了一个选项(http://docs.jquery.com/Plugins/Validation/validate#options),则需要一个certrain字段:
$(".selector").validate({
rules: {
contact: {
required: true,
email: {
depends: function(element) {
return $("#contactform_email:checked")
}
}
}
}
})
如果选择了特定选项,我会将它显示在显示其他字段的位置。选择菜单失去焦点后,控制台中会出现以下错误:
未捕获的TypeError:无法调用方法 未定义的“呼叫”
我在JSFiddle上发布了一个示例。如果有人可以看看我会非常感激。我需要尽快开始工作!
答案 0 :(得分:4)
发生错误是因为您需要将depends
函数与特定验证规则相关联:
$form.validate({
rules: {
favoriteSport: {
required: true
},
position: {
required: {
depends: function(element) {
return $('#favoriteSport').val() === '1';
}
}
},
player: {
required: {
depends: function(element) {
return $("#favoriteSport").val() === '1';
}
}
}
},
messages: {
favoriteSport: "You must select a favorite sport",
position: "You must select a position because you selected football",
player: "You must select a player because you selected football"
}
});
答案 1 :(得分:3)