IT story

jQuery를 사용하여 .prop를 변경해도 .change 이벤트가 트리거되지 않습니다

hot-time 2020. 8. 6. 07:50
반응형

jQuery를 사용하여 .prop를 변경해도 .change 이벤트가 트리거되지 않습니다


확인란에 이벤트 리스너가 있습니다.

<input type="checkbox" name="something">

내 이벤트 리스너 :

$('input[type="checkbox"][name="something"]').change(function() { 
    //DO SOMETHING 
});

.prop확인란 을 변경하는 다른 이벤트 리스너가 있습니다 .

$('#button').click(function() { 
    $('input[type="checkbox"][name="something"]').prop("checked", false);
});

확인란을 선택하면 DO SOMETHING트리거가 트리거됩니다. 를 클릭 #button하면 .prop변경 사항이 표시되고 확인란이 시각적으로 선택 해제되어 있지만 DO SOMETHING트리거되지는 않습니다 ...

내가 간과하는 것?


코드를 사용하여 값을 수정 한 경우가 아니라 페이지의 사용자 상호 작용으로 값을 변경하면 변경 이벤트가 시작됩니다.

여기 에서 속성을 변경 .change()하거나 사용한 .trigger("change")후에 사용해야 합니다.

$('input[type="checkbox"][name="something"]').prop("checked", false).change();

실무 데모

참고 URL : https://stackoverflow.com/questions/24410581/changing-prop-using-jquery-does-not-trigger-change-event

반응형