我有一些代码允许用户在页面上创建包含一些内容的div。这些div是动态生成的,我需要一个click事件,当用户点击任何一个动态生成的div时会触发。
所有动态创建的div都有class="entry"
。
<div class="entry">
//some content
</div>
<div class="entry">
//some other content
</div>
//...
根据here给出的答案,我的代码如下所示:
$('body').on('click','div.event',function(){
console.log("clicked");
//do stuff
});
但是这个事件似乎没有触发,因为console.log(&#34; clicked&#34;)永远不会被执行。我做错了什么,如何解决这个问题?
编辑:对不起,这只是错字。我不敢相信我之前没有发现过。很遗憾浪费你的时间,不幸的是我现在无法删除这个问题,因为人们已经回答了这个问题。答案 0 :(得分:5)
你写了event
而不是entry
。
$('body').on('click','div.entry',function(){
console.log("clicked");
//do stuff
});
答案 1 :(得分:2)
将您的代码更改为以下内容。它应该工作。
$('document').on('click','.entry',function(){
console.log("clicked");
//do stuff
});
文档将在整个文档中搜索您的类名,一旦找到类名,就会触发事件。