0

私はこのコードを持っています、

<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>

そしてjqueryのこのコード:

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 が削除されますが、そうではありません。

4

3 に答える 3

1

onclick ハンドラーは <i> 要素にアタッチされていますが、親 div を削除したいと考えています。このようなことを試してください。

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

最も近い手段を使用すると、 <i> がどれほど深くネストされていても、親 div が見つかります

于 2012-06-22T10:05:09.427 に答える
0

私はあなたがのように配置する必要があると思います$(arg0).remove();

于 2012-06-22T09:57:30.257 に答える
0

これを試して:

$("#event_list_main").append($("#event").html()).click(function () {
    this.remove()
});
于 2012-06-22T09:57:53.243 に答える