我一直在尝试使用jQuery validate 插件的 'group' 选项来验证两个选择框,这两个选择框都是必需的,但应该只显示一条错误消息:
JavaScript:
$('form').validate({
groups: {
cardExpiration: 'card_expirationMonth card_expirationYear'
},
rules: {
card_expirationMonth: 'required',
card_expirationYear: 'required'
},
errorPlacement: function (error, element) {
if (element[0].name === 'card_expirationMonth' || element[0].name === 'card_expirationYear') {
error.prependTo('form');
}
}
});
加价:
<form method="post" action="/wherever">
<div class="-field field-expirationMonth">
<select name="card_expirationMonth" id="card_expirationMonth">
<option value="">MM</option>
<option value="01">01</option>
<option value="02">02</option>
<option value="03">03</option>
<option value="04">04</option>
<option value="etc">Etc</option>
</select>
</div>
<div class="-field field-expirationYear">
<select name="card_expirationYear" id="card_expirationYear">
<option value="">YY</option>
<option value="2012">12</option>
<option value="2013">13</option>
<option value="2014">14</option>
<option value="2015">15</option>
<option value="etc">Etc</option>
</select>
</div>
</form>
这似乎对错误消息进行了分组,因此只有一个可见,但似乎采取了只需要组中的一个字段的方法......有什么想法吗?