使用jquery.validate.js插件进行条件表单validation

任何人都可以告诉我如何编写一个规则来validation用户是否选择/填充了一个单选按钮选项和(optinal)文本字段? 如果未选择复选框选项#myradiogroup且文本字段#email2为空,则规则应仅显示消息。

我的表格代码:

 
option 1 option 2

jQuery Validate中的required参数可以使用一个函数。

 $('#myForm').validate({ rules: { email2: { required: function(element) { if ($('[name="myradiogroup"]:checked').length) { return false; } else { return true; } } }, myradiogroup: { required: function(element) { if ($('#email2').val()) { return false; } else { return true; } } } } }); 

这是Sparky的精简版

 $('#myForm').validate({ rules: { email2: { required: function(element) { return !$('[name="myradiogroup"]:checked').length; } }, myradiogroup: { required: function(element) { return !$('#email2').val(); } } } }); 

也许这可以:

 $('#myForm').submit(function() { if($('input:radio').val() == '' || $('#email2').val() == '') { preventDefault(); // show error } }