2013-07-28 3 views
0

게시물 요청 후 부모 제거를 실행하려고하는데 작동하지 않는 것 같습니다.부모 삭제 작동하지 않음

왜 그런가? 여기 내 코드가있다. 이상적으로는 $ currentId가 찾은 요소를 제거하고 싶습니다.

$('#chat').on('click', '.delete', function() { 
    var $currentId = $(this).parent().attr('id'); 
    $.post("assets/delete.php",{ id: $currentId },function(data) 
     { 
     $(this).parent().remove(); 
     } 
    ); 
}); 

답변

4

범위를 변경했습니다. 이 시도 :

$('#chat').on('click', '.delete', function() { 
    var parent = $(this).parent(); 
    var $currentId = parent.attr('id'); 
    $.post("assets/delete.php",{ id: $currentId },function(data) 
     { 
     parent.remove(); 
     } 
    ); 
}); 
+0

이 답변은 '$ (...)'호출을 사용하지 않는 것이 가장 좋습니다 (나는 당신과 Jack의 코드가 단순한 차이가 50 %의 성능을 의미하는 프로젝트에서 작업했습니다). 잘 하셨어요! – FakeRainBrigand

1

$.post 내부의 $(this)$('#chat')$.post하지를 참조하기 때문에이 작동하지 않습니다.

이 시도 :

'게시물'완료되면
$('#chat').on('click', '.delete', function() { 
    var $currentId = $(this).parent().attr('id'); 
    var that = $(this); 
    $.post("assets/delete.php",{ id: $currentId },function(data) 
     { 
     that.parent().remove(); 
     } 
    ); 
}); 
0

, 당신의 '이'당신이 생각하는 요소를 참조하지 않습니다. $ ('# chat')을 사용해야합니다. parent(). remove()

편집 : ID가 chat 인 요소를 찾을 필요가 없으므로 Jacks 응답이 훨씬 좋습니다. 임시 변수 (이 예에서는 그 변수)에 할당하는 것이 더 빠 른 옵션입니다.

관련 문제