-1

を含むdivがあります7 checkboxes。にアクセスするための次のコードを書き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 です。誰か私に問題を教えてもらえますか?

4

5 に答える 5

3
var icons = $("div").find("input[type=checkbox]:checked");
于 2012-05-19T11:25:14.933 に答える
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);
})
于 2012-05-19T11:35:41.327 に答える
0

ひやデモ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"));
});
于 2012-05-19T11:36:39.557 に答える
0

最も簡単な方法は、クラスをターゲット入力に割り当て、checked selectorを使用することです。以下の例を参照してください。

var icons = $('.box:checked');
于 2012-05-19T11:27:44.553 に答える
0
var icons= $("div").find("input:checked").length;
alert(icons);
于 2012-05-19T11:25:36.627 に答える