0

チェックされていないチェックボックスのIDを取得するにはどうすればよいですか?

以下のコードがありますが、使用されている配列で単一の値を取得しているようですstate

$("input[type='checkbox']").each(function(){
                 if ($(this).is(":checked")) 
                 {
                    checkbox.push($(this).data("id"));
                    state = 1;
                 }else{
                    $("input[type='checkbox']").attr('checked', false);
                    checkbox.push($(this).data("id"));
                    state = 0;
                 }
4

2 に答える 2

1

notチェックされていないものを取得するために使用できます。

$("input[type='checkbox']").not(':checked').each(function(){
     checkbox.push($(this).data("id"));
});

1つの問題は、あなたがやっている可能性があります

$("input[type='checkbox']").attr('checked', false);

あなたのelse条件では、おそらく最初の要素がelseになると、すべてがチェックされていない状態に設定されます(attr十分に機能する場合)。

0..1 の配列が必要な場合

var checkbox=[], state=[]; 
$("input[type='checkbox']").each(function () {
    var flg = this.checked ? 1 : 0;
    checkbox.push($(this).data("id"));
    state.push(flg);
});
于 2013-09-28T03:01:23.933 に答える