2

すべて/なしのチェックボックスをオンにしています。ただし、一度しか機能しません。すべてをチェックしてからすべてをチェック解除できますが、再度すべてをチェックすることはできません。

http://jsfiddle.net/SDEwB/

check all/none: <input type = "checkbox" id = "check_all_none"></input>
<br/>
<input type = "checkbox" class = "others"></input><br/>
<input type = "checkbox" class = "others"></input>


$('#check_all_none').change(function () {
    if ( $(this).is(':checked') ){
        $('.others').attr("checked", true);
    }
    else{
        $('.others').removeAttr("checked"); 
       // $('.others').attr("checked", false); // tried this, too
    }
});
4

5 に答える 5

7

使用する

$('#check_all_none').change(function () {
    $('.others').prop("checked", this.checked);
});

デモ:フィドル

于 2013-08-16T11:31:43.203 に答える
5

これを試して

 $('#check_all_none').click(function () {
if ( $(this).is(':checked') ){
    $('.others').prop("checked", true);
}
else{
    $('.others').removeAttr("checked");
 }

});

デモ

于 2013-08-16T11:29:33.047 に答える
1

attr の代わりにpropを使用します。

if ( $(this).is(':checked') ){
    $('.others').prop("checked", true);
}
else{
    $('.others').prop("checked", false);
}

http://jsfiddle.net/SDEwB/3/

更新

アルンが言ったように、これはより良いです:

$('#check_all_none').change(function () {
    $('.others').prop("checked", this.checked);
});
于 2013-08-16T11:30:43.427 に答える
0

必要なすべてのチェックボックスをオンにする簡単な方法を次に示します。

$("#check_all_none").click(function() {
    $(".others").attr('checked', this.checked);
});

デモ

于 2013-08-16T11:34:14.537 に答える
0
<input type = "checkbox" id = "check_all_none" onclick="checkAll(this)" />
<input type = "checkbox" class = "others" name="chk" /><br/>
<input type = "checkbox" class = "others" name="chk" /> 

JQuery:

function checkAll(t){
    if ( $(t).is(':checked') ){
        $('.others').prop("checked", true);
    }
    else{
        $('.others').attr('checked', false);
    }   
}

JavaScript:

function checkAll(t){
   var checkboxes= document.getElementsByName('chk');
    for (var i = 0; i < checkboxes.length; i++) {
        if(t.checked==true){
            checkboxes[i].checked = true;
        }else{
            checkboxes[i].checked = false;
        }
    }
}

関数を宣言しています。このコードはどこでも簡単に再利用できます。私が書いたコードには2種類あります(JQueryとJavaScript)。どちらも正常に動作しています。jQuery ライブラリを使用する必要がない場合は、JavaScript コードを使用してください。

于 2015-03-30T06:00:48.947 に答える