jQuery $(this).remove()在追加后无效

我有一个带有class="tags"的div,带有一个预定义的超链接。

  

我有function删除该超链接,如果用户点击它。

 $('.tags a').click(function() { $(this).remove(); return false; }); 

这适用于预定义的超链接。 如果我在jQuery的帮助下添加其他链接(在页面加载后)

 $('.tags').append('newLink'); 

在这些添加的链接上不会调用删除超链接(单击时)的function。 怎么解决这个?

你必须使用实时function:

 $(".tags a").live("click", function() { // ... }); 

由于您是在初始加载后添加链接,因此标准点击事件不会绑定到动态添加的链接。

您的click事件仅附加到当前dom元素而不是未来元素。如果要将此事件添加到包含future的所有元素,则必须在jquery中使用live事件。 http://jsfiddle.net/6cGvt/