2012-06-22 2 views
0

나는이 코드 조각이에동적 JQuery와에, 사업부의 JQuery와

<div id="event" style="display:none;"> <!-- initially hidden --> 
    <div class="user_event my_background"> 
     <%= image_tag("events_pics/boom.png", :class=> 'event_pic_small') %> 
     <h6 class="event_info">Event_1: Frame: 974</h6> 
     <a class="btn btn-mini btn-danger pull-right " href="#"><i class="icon-remove" onclick="remove(this)"></i></a> 
    </div> 
</div> 

이 코드를 함수를 할당 :

function add_event(event){ 
    //ASSIGN DATA VALUES BEFORE 
    $("#event_list_main").append($("#event").html()); 
} 

잘 작동하는 것 같다 어느. 문제는 div를 "만들"때마다 해당 div에 삭제 기능이 지정되기를 바랍니다. 그래서 div 자체를 삭제할 수 있습니다. 이것이 내가 onclick="remove(this)" "div"함수 자체에 전달한 이유입니다. 문제는 내 제거 함수의 코드가 작동하지 않는다는 것입니다.

function remove(arg0){ 
    arg0.remove(); 
} 

주어진 div가 제거되어야하지만 그렇지 않습니다.

$("#event_list_main").append($("#event").html()).click(function() { 
    this.remove() 
}); 
+0

가의 onclick = '시도이다 "$ (이) .remove();"...' – Esailija

+2

를 @ 에사이야. 아니면 더 나은 : jQuery를 사용할 때'onclick'을 사용하지 마십시오. ** :) ** – gdoron

답변

1

귀하의 onclick 핸들러는 < I> 요소에 첨부되어 있지만 부모 DIV를 제거하려면 :

+0

고마워요! 그것은 일했다! 부모 요소를 완전히 잊어 버렸습니다. –

0

나는 $(arg0).remove();

0

이 시도처럼 당신이 배치한다고 생각합니다. 이런 식으로 해보십시오.

<div class="user_event"> 
    <i onclick="$(this).closest('.user_event').remove()">remove</i> 
</div> 

가장 가까운 사용은 중첩 방법에 상관없이 부모 DIV를 찾을 수 없습니다 의미 < 전>