반응형
jQuery 사용 시 Click이벤트 바인딩을 아래와 같이 많이 하는데 html(), append() 등으로 동적으로 추가되는 엘리먼트들에 대해서는 이벤트가 동작하지 않는다. Page가 로드되는 시점에 존재 않는 엘리먼트들에 대해서는 이벤트가 안먹힌다고 한다
$('.mydiv').on("click",function(){
// 이벤트 처리
}
동적으로 추가되는 class가 ".mydiv"인 엘리먼트에 이벤트를 위에처럼 바인딩해줬을 때는 동작하지 않는다
이럴때는 Page가 로드될 때 존재하고 동적으로 변하지 않는 상위 엘리먼트를 기준으로 바인딩 설정을 해준다
/** <div class="myDivParent">
* <div class="mydiv">...</div>
* </div>
*/
$('.myDivParent').on("click", '.mydiv', function(){
// 이벤트 처리
}
class가 ".myDivParent"인 엘리먼트는 동적으로 변하거나 추가되는 엘리먼트가 아니라 이를 기준으로 잡고, 하위에 ".mydiv" 엘리먼트 이벤트를 설정해준다.
반응형
'개발 > 기타' 카테고리의 다른 글
Maven Build 옵션(pl, am, amd) - 멀티모듈에서 특정 모듈만 빌드 (0) | 2022.02.18 |
---|---|
Java List removeIf(), 안전한 List 루프 Item Remove (0) | 2022.02.15 |
Nginx 설치 from Source(Mac기준) (0) | 2022.01.18 |
Cookie 공유 범위 (0) | 2022.01.10 |
네트워크 도메인 - DNS, A레코드, CNAME, TTL (0) | 2021.12.17 |
댓글