チェックボックスのチェックを反転させるボタン
$() で取得した checkbox を each で回して属性を設定する、ってだけ。
each が
それぞれのDOM要素に対して,指定した関数を実行します.
DOM要素がthisになって関数が実行されます. jQueryオブジェクトとして扱いたい場合は,$(this)とラッパする必要があります.
という仕様とは知らず、ちょっとハマってしまった。
$(function() { $("#switch").click(function() { $("#main :checkbox").each(function() { if($(this).attr("checked") == "") { $(this).attr("checked", "checked"); } else { $(this).attr("checked", ""); } }); }); });
HTML(ボタン部分のみ)
<input type="button" value="反転" id="switch" />