1

私は他のスレッドを見ましたが、私にとってうまくいく解決策は見つかりませんでした。

ここでHTMLのすべてのチェックボックスを選択しようとしています:

<input type="checkbox" id="selectall" onchange="toggleAllWorkers(this.checked);" />ALL<br>
<input type="checkbox" class="emp" name="w0" value="1" onchange="buildPage();" />Andrey <br>
<input type="checkbox" class="emp" name="w1" value="4" onchange="buildPage();" />Brian <br>
<input type="checkbox" class="emp" name="w2" value="5" onchange="buildPage();" />Eric <br>
<input type="checkbox" class="emp" name="w3" value="3" onchange="buildPage();" />Ken <br>
<input type="checkbox" class="emp" name="w4" value="2" onchange="buildPage();" />Kerry <br>

ジャバスクリプト

function toggleAllWorkers(status) {
    $("#clickmenu .emp").each( function(index) {
        console.log( index + ": "+$(this).attr("checked")+' status:'+status+' Value:'+$(this).val());
        $(this).attr("checked",status);
        console.log( index + ": "+$(this).attr("checked"));
    });
}

ただし、ページのリロード後に 2 回しか機能しません。

4

2 に答える 2

2

関数を使用する必要がありpropます。http://api.jquery.com/prop/

function toggleAllWorkers(status) {
    $('.emp').prop('checked',status);
}

同様に、を使用する必要はありませんeach。これは、1 つの単純なセレクターで実行できます。

于 2013-08-23T19:31:07.217 に答える