2012-08-28 4 views
4

에 게시물이 추가되지 않고 게시물을 추가 할 수있는 기능을 추가했습니다. 기존 게시물에 댓글을 달아도 문제가 없습니다.하지만 새 게시물을 추가하고 새로 댓글을 달면 추가 게시물, 그것은 작동하지 않습니다. 여기에 내가 가지고있는 것입니다 http://jsfiddle.net/testtracker/Nh2NQ/
먼저 기존 게시물에서 잘 작동하는지 확인한 다음 게시물을 추가하십시오. 이제 새로 추가 된 게시물에 댓글을 달아보십시오 .. 작동하지 않습니다 ... 문제가 무엇인지 여기에서. PLS새로 추가 된 게시물

감사

jQuery를이 요소가 존재하기 전에 이벤트를 제출 초기화하기 때문이다

답변

1

JQuery와 페이지가로드 요소에 이벤트를 결합, 그래서 이것은 그들과 함께 바인더 제본 어떤 이벤트가 없기 때문에 이벤트가 새로 추가 된 요소에 트리거되지 않는 이유 때입니다 .

이 반드시

$('#posts').on('submit', '.comment_entry form', function(e) { 
     code to add comment..... 
}); 
0

도움이됩니다. 새로운 .comment_entry form을 추가하면 jQuery는이를 알지 못하며 제출 이벤트는이 특정 요소에 바인딩되지 않습니다.

This link may help you.

2

이 시도 :

http://jsfiddle.net/Nh2NQ/5/ 내가 너무 동적 form 요소를 삽입하기 위해 또한 제출 핸들러를 첨부 할 수 있습니다 이벤트 위임을 사용하여

$('body').on('submit', '.comment_entry form', function (e) { 
    ... 
}); 

에이 라인

$('.comment_entry form').submit(function (e) { 

}); 

을 변경했습니다. 다른 일반적인 부모 body을 변경 자유롭게 계층 적 요소에 "가까이"

+0

그래 ..... 바로 감사 –

2
이 만 선택이 평가 될 때 발견되는 요소에 리스너를 추가

:

$('.comment_entry form').submit(... 

새 양식을하지 않습니다 이 시점에 존재하므로 리스너가 등록되지 않습니다.

사용하는 대신 라이브 대표 :

$('#posts').on('submit', '.comment_entry form', function(e) { ... }); 
+0

.... 덕분에 어떤 상황에서도 작동합니다 –

관련 문제