【jQuery】チェックされているチェックボックスを取得したい
:checkbox セレクタ
jQueryの :checkbox セレクタは、CSSにはないjQuery独特のセレクタで、パフォーマンス面ではよくはありません。使用する場合は、具体的な要素名と共に使用することが推奨されています。
× $(":checkbox") × $("*:checkbox") ○ $("input:checkbox")
さらに、よいのはCSSの疑似セレクタ風の記述ではなく、下のようにtype属性で判定する方法です。
◎ $("input[type='checkbox']")
:checked セレクタ
:checked セレクタはチェックされているチェックボックスとラジオボタンにマッチします。
:checked セレクタはjQuery独特のもので、CSSにはありません。性能面で特によいわけではありません。
よりよいパフォーマンスを得るには、要素を取得した後で、.filter(“:checked”) することです。
チェックされたチェックボックスを取得するには
$("input[type='checkbox']:checked")
$("input[type='checkbox']").filter(":checked")
がよさそう。
さほどパフォーマンスを重視しない場合は、$(‘input:checkbox:checked’)で問題ないと思います。
参考
http://api.jquery.com/checkbox-selector/
コメント