2011-10-04 7 views
5

를 수신 내가 이런 식으로 체크 박스 상태를 변경 해요 : 내가 체크 박스 상태를 수신 할이 후 $(this).attr("checked", 'checked');jQuery를 체크 박스 상태

,하지만이있어 :

$(this).attr('checked'): "checked" 
$(this).is(':checked'): false 

이 어떻게 할 수 있습니까?

P. 아마 jQuery를 통해 체크 박스 상태를 올바르게 변경하지 못했을 것입니다.

답변

13

올바른 방법은 $(this).prop('checked') 속성 (문자열) 대신에 속성을 반환하는 것입니다. 당신이 http://jsfiddle.net/ThiefMaster/QR2fL/에서 볼 수 있듯이 $(this).prop('checked', true_or_false);

, .attr('checked') 속성의 초기 값을 반환 - 확인란의 선택을 취소/검사 할 때이 변경되지 않습니다

.prop()를 사용하여 당신은 또한 는 확인 상태가을 설정할 수 있습니다.

4

이 같은 체크 박스 확인 안 :

$(this).attr("checked", 'checked'); 

을하지만,이 같은

$(this).prop("checked", true); 

확인하려면 확인란이 선택되어있는 경우 다음을 사용할 수 있습니다

$(this).prop('checked'); 

또는

$(this).is(':checked'); 

부울 프로퍼티를 반환