这不是Event binding on dynamically created elements?的重复,因为我已经在使用ON功能,但它不起作用:
我正在尝试删除动态创建的元素。
每次用户进行搜索时,都会添加一个带有关键字的标签,其中包含一个X按钮以删除此标签(它将添加到.tags div):
<div class="tags"></div>
<div class="all">
<input type="search" class="searchfield" />
<button class="searchbutton">add tag</button>
</div>
问题是,当我点击X按钮时,开启(“点击”功能永远不会执行!(我从未收到警报):
$( document ).ready(function() {
$(".searchbutton").click(function(){
addTag($(".searchfield").val());
});
$(".removeTag").on("click", function(){
alert("yes");
}); });
function addTag(search) { $(".tags").append("<div class='tag'><span class='keyword'>" + search + "</span><button class='removeTag'>X</button></div>"); }
在此处查看演示http://jsfiddle.net/vvuah6pf/1/您必须进行搜索以查看添加的标记
我使用jQuery 1.9.1
由于
答案 0 :(得分:1)
这是重复的
$(document).on("click",".removeTag", function(){
alert("yes");
});
这是您的更新版本: http://jsfiddle.net/vvuah6pf/3/