我想获得一个名单列表,其中的复选框在特定的DIV(页面换行)中被选中。我正在创建一个类别的过滤器,并具有不同类型的树视图,如颜色,质量,颗粒等......每个都有自己的类分配给它们。颜色有一类color_cb,质量是product_cb,Grain是grain_cb。以下代码适用于其中任何一个,但我想测试所有3.有没有办法修改所有3。
var selected = [];
$('#page-wrap input:checkbox.color_cb:checked').each(function() {
selected.push($(this).attr('name'));
});
alert(selected.join(","));
我试过这个,但它不起作用。
var selected = [];
$('#page-wrap input:checkbox.color_cb:checked input:checkbox.product_cb:checked').each(function() {
selected.push($(this).attr('name'));
});
alert(selected.join(","));
答案 0 :(得分:1)
使用逗号分隔符b / w选择元素
$('#page-wrap input:checkbox.color_cb:checked ,#page-wrap input:checkbox.product_cb:checked')
^^^^-- add , seperator
或使用 map()
var selected = $('#page-wrap input:checkbox.color_cb:checked ,#page-wrap input:checkbox.product_cb:checked').map(function () {
return $(this).attr('name');
}).get();
答案 1 :(得分:0)
简单地删除课程应该可以正常工作。
var selected = [];
$('#page-wrap input:checkbox:checked').each(function() {
selected.push($(this).attr('name'));
});
alert(selected.join(","));
http://jsfiddle.net/60hnvnh9/1/
如果您要避免定位的复选框,只需给复选框另一个,公共类和目标。
答案 2 :(得分:0)
'#page-wrap input:checkbox.color_cb:checked input:checkbox.product_cb:checked'
此查询选择器表示输入:checkbox.product_cb:已检查是输入的子项:checkbox.color_cb:已检查
但是,我认为你正在寻找完成一个或另一个查询的元素,因为你必须使用逗号分隔符,如下所示:
'#page-wrap input:checkbox.color_cb:checked, #page-wrap input:checkbox.product_cb:checked'