tableの先頭行のthにチェックボックスを、各trの左列にチェックボックスを表示しています。
全選択のチェックボックスをチェックした場合、各行のチェックボックスをチェックさせ、各行のチェックボックスを全てチェックした場合、全選択のチェックボックスをチェックさせるというのをやりたいです。
わからないのは各行のチェックボックスを全てチェックした場合、全選択のチェックボックスをチェックさせるというものです。
どうしても各行のチェックボックスをclickした場合が、指定の仕方が良くないのか反応してくれません。
html
1<table> 2 <thead> 3 <tr><th><input type="checkbox" id="all" /></th><th>テスト列</th></tr> 4 </thead> 5 <tbody id="boxes"> 6 <tr><td><input type="checkbox" class="chk" /></td><td>テスト1</td></tr> 7 <tr><td><input type="checkbox" class="chk" /></td><td>テスト2</td></tr> 8 <tr><td><input type="checkbox" class="chk" /></td><td>テスト3</td></tr> 9 <tr><td><input type="checkbox" class="chk" /></td><td>テスト4</td></tr> 10 <tr><td><input type="checkbox" class="chk" /></td><td>テスト5</td></tr> 11 ... 12 </tbody> 13</table>
jquery
1$(function() { 2 $('.chk').on('click', function() { 3 alert('ok'); 4 if ($('#boxes :checked').length == $('#boxes :input').length) { 5 // 全てのチェックボックスにチェックが入っていたら、「全選択」 = checked 6 $('#all').prop('checked', true); 7 } else { 8 // 1つでもチェックが入っていたら、「全選択」 = checked 9 $('#all').prop('checked', false); 10 } 11 }); 12});
上記コードではalertが出てくれません。
指定の仕方が良くないのでしょうか。
ご存知の方教えてください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。