목차
화면에 체크박스가 2개 있고, 체크박스의 change 이벤트를 감지하여 두 체크박스가 모두 체크되었을 때만 버튼을 활성화시키는 기능이 있다.
그런데, 사용자가 직접 체크박스를 체크했을 때는 이벤트가 잘 감지되었지만, 함수 호출로 동적으로 체크박스를 체크한 경우는 감지되지 않는 문제가 있었다.
이유는 기본적으로 체크박스를 동적으로 조작하면 이벤트가 발생하지 않기 때문에 그렇다.
그래서 trigger.('이벤트명')으로 이벤트를 강제로 발생시켜 해결 했다.
수정 전
function check(checkId, target) {
document.getElementById(target).classList.add('d-none');
$("#" + checkId).prop('checked', true);
}
수정 후
// 생략...
$("#" + checkId).prop('checked', true).trigger("change");
개인 스터디 기록을 메모하는 공간이라 틀린점이 있을 수 있습니다.
틀린 점 있을 경우 댓글 부탁드립니다.
'IT > development' 카테고리의 다른 글
[axios] axios 비동기 통신 (0) | 2025.01.19 |
---|---|
[Node.js] 무한 스크롤 적용 소스 (feat. mobile) (0) | 2025.01.11 |
[java] 직접 구현한 List 추상화 (feat. 의존관계 주입) (11) | 2025.01.05 |
[java] 직접 구현하는 연결리스트 > 추가, 삭제 기능 (feat. 자료구조) (9) | 2025.01.05 |
[java] LinkedList(연결 리스트) 내 방식대로 이해 (feat. 자료구조) (16) | 2025.01.04 |
댓글