본문 바로가기

'.' Programs/jQuery

[jQuery] checkbox 전체선택 , 해제

jQuery를 활용한 체크박스 전체 선택/해제.

<html> <head> <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script> <script> $(document).ready(function(){ $('#total').click(function(){ if ($("#total").is(":checked")) { $('input:checkbox[id^=test[]]:not(checked)').attr("checked", true); } else { $('input:checkbox[id^=test[]]:checked').attr("checked", false); } }); }); </script> </head> <body> <table> <tr> <th class="bbs_left"><input type="checkbox" id="total" />전체</th> </tr> <tr> <td><input type="checkbox" id="test[]"/>테스트1</td> </tr> <tr> <td><input type="checkbox" id="test[]"/>테스트2</td> </tr> <tr> <td><input type="checkbox" id="test[]"/>테스트3</td> </tr> </table> </body> </html>

=========================================================================================================

인터넷에 체크박스 관련 소스를 찾다보면..

전체값 해제하는 부분 소스가..


$('input:checkbox[id^=test[]]:checked').attr("checked""");


로 표기된 경우가 많다.. 어떠한 이유인지는 잘 모르겠지만..  

나 같은 경우 전체 선택은 되지만 해제는 안되는 문제가 생겼다.


해결방법으로.. .attr("checked""") 와 같은 널처리 대신... .attr("checked", false)  속성값으로 지정하면 해결 된다.