我有一个代码,其中我将一些html附加到jQuery上,如
$("#divId").append("<div class='click' data-id='id'></div>");
我希望通过点击附加的div来访问
$(".click").click(function(){
var id = $(this).attr('data-id');
alert(id);
});
但是当我点击时,nothink发生了,是否有一些解决方案呢?谢谢!
答案 0 :(得分:0)
您需要使用事件委派。
$("body").on('click', '.click', function(){
var id = $(this).attr('data-id');
alert(id);
});
由于事件仅限于页面上已有的元素。但在你的情况下,你是动态附加元素。
body
也可以替换为包含这些元素的最近祖先。
$("#divId").on('click',
<强> Check Fiddle 强>