"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > jQuery를 사용하여 동적으로 추가된 HTML 요소에 'onclick' 이벤트를 바인딩하는 방법은 무엇입니까?

jQuery를 사용하여 동적으로 추가된 HTML 요소에 'onclick' 이벤트를 바인딩하는 방법은 무엇입니까?

2024-11-09에 게시됨
검색:652

How to Bind 'onclick' Events to Dynamically Added HTML Elements with jQuery?

jQuery를 사용한 동적 이벤트 바인딩: 'onclick' 문제 해결

프런트엔드 개발 영역에서는 동적으로 추가하는 것이 일반적입니다. 페이지에 대한 HTML 요소입니다. 그러나 새로 추가된 요소에 이벤트를 바인딩하는 것은 까다로울 수 있습니다. 기존 이벤트 바인딩 방법이 예상대로 작동하지 않을 수 있기 때문입니다.

문제: 라이브 이벤트와 위임된 이벤트

동적으로 추가된 요소를 처리할 때 전통적으로 라이브 이벤트 바인딩(bind(), live() 및 위임()과 같은 메서드)이 적합한 솔루션이었습니다. 그러나 이러한 메서드는 성능 문제로 인해 jQuery에서 더 이상 사용되지 않습니다.

대신 이벤트가 정적 요소(종종 문서 개체)에 바인딩되고 핸들러가 다음을 기반으로 호출되는 위임된 이벤트 바인딩을 사용해야 합니다. 선택기가 지정되었습니다.

해결책: on() 메서드 사용

다음을 사용하여 동적으로 추가된 요소에 onclick 이벤트를 바인딩하려면 위임된 이벤트 바인딩을 사용하려면 jQuery on() 메서드를 사용해야 합니다. 이 메소드는 세 가지 매개변수를 사용합니다.

  1. 이벤트 유형(예: "클릭")
  2. 이벤트를 첨부할 요소를 대상으로 하는 선택기
  3. 이벤트 매니저 함수

예:

$(document).on('click', '.my-dynamic-element', function() {
  // Code to execute when the element is clicked
});

동적으로 추가된 여러 요소에 바인딩

여러 요소가 동적으로 추가되는 경우 on( ) 방법. 이렇게 하면 지정된 선택기가 있는 모든 요소가 일관되게 처리됩니다.

사용되지 않는 메서드

다음 메서드는 더 이상 사용되지 않으며 더 이상 이벤트에 사용되어서는 안 됩니다. 바인딩:

  • bind()
  • live()
  • delegate()

위에서 설명한 대로 on() 메서드 사용 최신 버전의 jQuery와의 호환성을 보장하고 동적으로 추가된 요소에 대한 효율적인 이벤트 처리를 제공합니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3