2012-01-06 5 views
1

私はtags-のリストを作成し、削除を追加したいボタン - この次のコードは、私ならば、私はアンカーリンクのアクセス親スパンオブジェクト

<li> 
<span id="tag_'+html.id+'" class="tag">'+formvalue+' 
    <span class="remove_tag"> 
     <a class="remove_tag_link" href="#">x</a> 
    </span> 
</span> 
</li> 

タグを作成するために使用しているJSあるのですアンカータグのクリックをキャプチャします。最初にidで渡されたIDを使用して(タグを識別するために)、開始li(およびそれに含まれるすべて)を削除するにはどうすればよいですか?

+0

は動的に追加されますか?すなわち、ページが最初にロードされたら? – ManseUK

+0

作業[例](http://jsfiddle.net/M65rC/)これ。 –

+0

これをページでチェックしてから、フィドルに貼り付けました。私はフィドルでこの問題を観察しましたが、これはページで使用するとうまくいきます。 –

答えて

0

あなたは、より簡単にli要素にクリックイベントをバインドし、あなたのハンドラ内

$(this).remove(); 

を使用して削除することができます。

2

は、あなたが求めているものを行うためにIDを使用する必要はありません。この

$('.remove_tag a').on('click', function(event){ 
    event.preventDefault(); 
    $(this).parents('li').remove(); 
}) 
+0

これは、それがより高いレベルのliに含まれていると、望ましくない影響を引き起こす可能性があります。 '$(this).parents( 'li')に変更することをお勧めします。first()。remove();' – pederOverland

0
$(".remove_tag_link").click(function(e){ 
    e.preventDefault(); 
    $(this).closest('li').remove(); 
}); 
0

を試してみてください。これにより、クリックされたリンクを含むliが削除されます...

$(function() { 
    $(".remove_tag_link").click(function() { 
     $(this).parent().parent().remove(); 
    }); 
}); 
関連する問題