在启用提交按钮之前,我需要确保已经回答了所有无线电组.如果我有:
var radioBtns = $('input').filter(':radio');
它告诉我有多少个单选按钮,但我需要知道是否有任何组尚未选择选项.
解决方法
如果你知道你有多少个团体,你可以做:
if($('input:radio:checked').length < numGroups){ // At least one group isn't checked }
否则,您需要先计算组数.我想不出有什么方法可以更好地做到这一点:
var rgroups = []; $('input:radio').each(function(index,el){ var i; for(i = 0; i < rgroups.length; i++) if(rgroups[i] == $(el).attr('name')) return true; rgroups.push($(el).attr('name')); } ); rgroups = rgroups.length; if($('input:radio:checked').length < rgroups) alert('You must fill in all the fields.'); else alert('Thanks!');