Javascript 如何收集div中的所有复选框元素?

Javascript 如何收集div中的所有复选框元素?,javascript,jquery,checkbox,Javascript,Jquery,Checkbox,我有一个大的div元素,里面有多个div和input(checkbox类型)标记。我想检查是否选中了所有复选框或否。我尝试使用以下JQuery代码段来引用div中的所有复选框: $('div#mainDiv-checkboxes input[type=checkbox]').each(function(){ //my logic }); 但它并没有得到所有的复选框。对于这种情况,什么是可靠的jquery选择器?我的页面中输入元素的位置没有顺序。我的意思是,在主分区内可以到处都是。获取所

我有一个大的div元素,里面有多个div和input(checkbox类型)标记。我想检查是否选中了所有复选框或否。我尝试使用以下JQuery代码段来引用div中的所有复选框:

$('div#mainDiv-checkboxes input[type=checkbox]').each(function(){
    //my logic
});

但它并没有得到所有的复选框。对于这种情况,什么是可靠的jquery选择器?我的页面中输入元素的位置没有顺序。我的意思是,在主分区内可以到处都是。获取所有复选框的编号。获取选中复选框的数目

如果数字相同,则全部选中

var container = document.querySelector('#mainDiv-checkboxes');
var checkboxesAll = container.querySelectorAll('input[type="checkbox"]');
var checkBoxesSelected = container.querySelectorAll('input[type="checkbox"]:checked');

您可以在不使用
each()的情况下完成这项工作。获取所有
复选框和
复选框的计数。如果两个值相等,则表示选中了“所有”复选框

$(“按钮”)。单击(函数(){
var all=$(“div:checkbox”).length;
var checked=$(“div:checkbox:checked”).length;
如果(全部==选中)
log(“选中所有复选框!”);
});

试验

您还可以使用
查询选择器
获取元素并尝试验证

样品

函数验证(){
var chks=document.querySelectorAll(“#内容输入[type='checkbox']”);
var result=Array.prototype.every.call(chks,函数(c){
返回c.checked;
});
控制台日志(结果);
}

A.
B
C
D

测试
99%发布的问题必须有一个。
if($('div#mainDiv复选框输入[type=checkbox]:已选中)。length=$('div#mainDiv复选框输入[type=checkbox])
意味着所有问题都已选中有什么不符合您的预期?看起来这部分代码很好。。。