jquery事件函数到使用.append()添加的元素

Dim*_*lov 3 jquery append

我有一个函数,它将一些HTML代码附加到我已经存在的div,如下所示:

<div id="my_ok_div">
<span>click me</span>
<div class="okay">ok</div>
</div>
Run Code Online (Sandbox Code Playgroud)

jQuery添加div:

$('#my_ok_div').click(function(){
$('#my_ok_div').append('<div class="okay">bla</div><div class="okay">bla bla</div>');  
});
Run Code Online (Sandbox Code Playgroud)

我也有一个与div一起工作的功能,好的

$('.okay').click(function(){
  alert('all okay!'); 
})
Run Code Online (Sandbox Code Playgroud)

这个完美的工作已经存在的div与类okay包含"ok"字.但是,这不适用于附加的div.为什么以及如何解决这个问题?谢谢.

Exp*_*lls 5

您可以在调用时绑定(或重新绑定)事件.append,也可以使用事件委派:

$("#my_ok_div").on('click', '.okay', function () {
   alert('all okay!');
});
Run Code Online (Sandbox Code Playgroud)