jquery如何仅访问选中的复选框?

时间:2012-05-19 11:22:35

标签: javascript jquery

我有一个包含7 checkboxes的div,我写了以下代码,用于访问only the checked checkbox

中的array icons
var icons = $("div").find("input[type=checkbox]").each(function () { 
if($(this).attr("checked") == "checked") return this; });

alert(icons.length);

但它总是警告7。任何人都可以告诉我这个问题吗?

5 个答案:

答案 0 :(得分:3)

var icons = $("div").find("input[type=checkbox]:checked");

答案 1 :(得分:0)

var icons= $("div").find("input:checked").length;
alert(icons);

答案 2 :(得分:0)

最简单的方法是将一个类分配给目标输入并使用checked selector,请参阅下面的示例:

var icons = $('.box:checked');

答案 3 :(得分:0)

您可以使用$.map

$(document).ready(function() {
    var checks = $.map($("div").find('input[type="checkbox"]:checked'),function(arr){
        return arr;
    })
    console.log(checks.length);
})

或您的方法,

$(document).ready(function() {
    var checks = $.each($("div").find('input[type="checkbox"]:checked'),function(){
        return this;
    })
    console.log(checks.length);
})

答案 4 :(得分:0)

Hiya 演示 http://jsfiddle.net/KzMqB/

您可能只需要使用:checked进行一次检查,它会为您提供所需内容。

好读:http://api.jquery.com/checked-selector/

希望这有帮助!

<强>码

var icons = $("div").find("input[type=checkbox]:checked").each(function() {
           alert("ID of checked checkbox = " + $(this).attr("id"));
});