我在页面上有很多复选框,看起来像这样,我不知道这些复选框的价值是什么,因此我不知道ID是什么:
<input value="78" type="radio" name="radio_tax_input[unit-type][]" id="in-unit-type-78">
<input value="90" type="radio" name="radio_tax_input[unit-type][]" id="in-unit-type-90">
<input value="3" type="radio" name="radio_tax_input[unit-type][]" id="in-unit-type-3">
我确实知道复选框的名称。我尝试使用jQuery检查是否已经检查了这些复选框的数量:
var selected_type = $("[name='radio_tax_input[unit-type][]']:checked").length; // count the unit type selections
if(selected_type == 0){
alert('denied');
return false;
}
但是我的变量selected_type
始终设置为0.有人可以提出原因吗?
答案 0 :(得分:1)
var selected_type = $('input[name="radio_tax_input[unit-type][]"]:checked').length;
这很好用。 JsFiddle:https://jsfiddle.net/sfaw9vvt/
答案 1 :(得分:1)
试试这个: -
$(document).ready(function () {
var selected_type = $("[name*='radio_tax']:checked").length; // count the unit type selections
if (selected_type == 0) {
alert('denied');
}
});
如果您没有使用任何功能,请确保您的代码在$(document).ready
内
希望这会有所帮助。
答案 2 :(得分:1)
如果您能够使用<div>
包围复选框,则以下内容将起作用:
var checkboxes = $('#container').find('input');
var checked = false;
for(var x = 0; x < checkboxes.length; x++){
var box = checkboxes[x];
if(box.checked){
checked = true;
}
}
if(!checked){
alert('denied');
return false;
}