2016-10-10 5 views
-1

append関数を使用してc_box_id divブロックを作成します。別の要素をクリックして最近追加された要素を制御する方法は?

var c_box = '<div id="c_box_id">...</div>'; 
$("#p_div").append(c_box); 

このボックスを削除する機能を起動するためのアンカータグがあります。

<a href="javascript:void()" onclick = "remove_c_box(c_box_id)">Remove</a> 

function remove_c_box(name) { 
    name = "#" + name; 
    $(name).remove() // This doesn't work because c_box_id is a dynamic element 
} 

クリックされていないため、以下のイベント委任を使用してc_box_idを削除することはできません。

$('body').on('click', '#c_box_id', function(){ 
    //... 
}); 

上記のアンカータグをクリックすると、どのようにc_boxブロックを削除できますか?

*** c_box_idは固定ストリングではありません。これは、アンカータグとdivブロックのセットに対してランダムに生成されます。例えば

<div class="ajxiu2"> </div> 
<a href="javascript:void()" onclick = "remove_c_box('ajxiu2')">Remove</a> 

<div class="sd5iu2"> </div> 
<a href="javascript:void()" onclick = "remove_c_box('sd5iu2')">Remove</a> 

<div class="cxj2c3"> </div> 
<a href="javascript:void()" onclick = "remove_c_box('cxj2c3')">Remove</a> 

<div class="i5xxas"> </div> 
<a href="javascript:void()" onclick = "remove_c_box('i5xxas')">Remove</a> 

私は任意の助けに感謝。

+0

'//でid文字列を引用することを確認する必要があります動的要素 ' - 本当ではない、うまくいくはずです。 idが 'c_box_id'の要素が複数ありますか? –

+0

はい。私は1以上です。また、c_box_idは固定されていません。これはランダムに作成され、予期しないものです。 –

+0

コンソールのエラーをチェックしましたか? – charlietfl

答えて

0

c_box_idがあるので、あなたはjQueryのIDセレクタのIDに

function remove_c_box(id) { 
    $('#' + id).remove() ; 
} 

#接頭辞を追加し、これは動作しませんonclick

onclick = "remove_c_box('ajxiu2')" 
関連する問題