2011-05-11 3 views
1

원격 콘텐츠를 기반으로 페이지에 목록을 렌더링하는 데 jQuery 템플릿 (http://api.jquery.com/jquery.tmpl/)을 사용했지만이 방법은 모두 정상적으로 작동합니다. 콘텐츠 및 클래스에 대한 클릭 이벤트가 동적 템플릿 콘텐츠는 하드 코딩 된 콘텐츠가 제대로 작동하는 행동을 존중하지 않습니다. http://jsfiddle.net/3eVrR/2/jQuery tmpl plugin - 동적 콘텐츠의 템플릿 결과와 관련된 문제 (버그?)

정적 '바'링크 내가 예상대로 경고를 생성 클릭 :

나는 약간 tmpl 플러그인과 함께 제공되는 개념의 증거로 정적 목록을 추가 할 수있는 기본적인 데모를 편집했습니다. 목록을 생성하기 위해 단추 (만화 또는 드라마) 중 하나를 클릭 한 다음 하이퍼 링크 (하드 코딩 된 링크와 동일한 클래스를 가짐)를 클릭해도 경고가 발생하지 않습니다.

누구나 문제를 볼 수 있습니까? Firebug는 오류를 표시하지 않습니다. 검사시 정적 콘텐츠와 동적 콘텐츠의 클래스가 동일합니다.

감사

답변

1

전통적으로 .click() 핸들러는 핸들러가 초기화 될 때 선택할 수있는 요소에만 적용됩니다.

// This handler will apply to any .getPage element, even if it is created 
// after this handler declaration has been executed. 
$('.getPage').live('click', function(){ 
    alert('clicked element with getPage class'); 
}); 
+0

최고, 감사합니다. – Raoul

+0

니스. 나는 그것을 몰랐다 :) – user489872

1

나는 당신의 코드와 함께 놀았 지금은 작동합니다 http://jsfiddle.net/3eVrR/5/은. 모든 컨텐츠가로드 될 때 이벤트를 초기화해야합니다. 무비 항목이 없을 때 이벤트를 초기화했습니다. 그런 다음 영화 엔트리를 추가하고 JS는 자신이 거기에 있는지 몰랐습니다.

+0

이 주셔서 감사합니다 :이 경우, .live() (또는 .delegate()) 핸들러는 더 나은 방법이 될 것입니다! – Raoul