我有一组复选框输入,我正在检查是否有任何选项:
var qualificationTypes = $('input[id ^=QualificationTypes_][id $=__IsSelected]');
var checked = false;
qualificationTypes.each(function () {
if ($(this).attr('checked')) {
checked = true;
}
});
我的解决方案有效,但......
是否有一种更紧凑的方式(一个班轮)来完成each()
,特别是因为我只对至少一个复选框进行检查感兴趣?
答案 0 :(得分:4)
是的:
var checked = qualificationTypes.is(':checked');
如果选中1复选框,则返回true。
alert($('input').is(':checked'));

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type="checkbox" />
<input type="checkbox" />
<input type="checkbox" checked="checked" />
<input type="checkbox" />
<input type="checkbox" />
<input type="checkbox" />
&#13;
答案 1 :(得分:1)
您可以过滤已检查项目的集合。
var checked = qualificationTypes.filter(':checked');
if (checked.length > 0) {
// We have checked / selected fields
}
答案 2 :(得分:1)
只需使用:checked this selector
if ($('input[id ^=QualificationTypes_][id $=__IsSelected]:checked').length > 0) {
}
答案 3 :(得分:1)
我不确定它是否有效,因为我没有你的HTML,但这是一个尝试:
var checked = ($('input[id ^=QualificationTypes_][id $=__IsSelected]:checked').length > 0);
尝试一下,如果有任何更改,请告诉我