2011-12-04 7 views
2

는 다음과 같은 HTML을 고려jQuery - 확인란이 프로그래밍 방식으로 변경되면 어떻게 알 수 있습니까?

<input type="checkbox" id="checkbox" checked /> 

잠시 후 체크 박스 GET의 체크되지 않은 :

$('#checkbox').removeAttr('checked'); 

가 어떻게이 checked 변경 속성 때 (jQuery를 함께) 찾을 수 있습니까? 위와 같은 프로그래밍 방식으로 확인란을 선택/선택 취소하면 .change() 이벤트 핸들러가 트리거되지 않습니다.

+3

, 최근의 jQuery 버전이 .prop'사용해야합니다 ('확인', false)를'취소하기 그것. – ThiefMaster

답변

4

DOM 이벤트는 프로그래밍 방식으로 트리거 될 때 발생하지 않습니다 (철자가 맞습니까?). 그러나 jQuery를 통해 첨부 된 이벤트는 jQuery trigger을 통해 트리거하면 발생합니다. liho1eye 말한 바와 같이

sample code

+1

샘플 코드가 죽었습니다. – FaddishWorm

2

. 이를 위해 jquery trigger 함수를 사용할 수 있습니다.

확인이 JSFiddle.

HTML :

<input type="checkbox" id="checkbox" checked /> 

jQuery를 : 참고로

// Remove the first checked attr 
$('#checkbox').prop('checked', false); 

// Bind checkbox to click 
$('#checkbox').bind('click', function() { // jQuery 1.7 you can use .on() 
    alert('You clicked the checkbox! Naughty boy!'); 
}); 

// execute the event for the matched elements. 
$('#checkbox').trigger('click'); 
관련 문제