如何将click事件绑定到元素是在click事件上创建的?

时间:2014-09-12 11:32:43

标签: javascript jquery

我有这样的脚本:

$(document).ready(function() {
    $('.button').click(function() {
       var button = document.createElement('button');
       $(button).addClass('button');
       $(button).html('Button');
       $(button).appendTo('.container');
    });
});

示例:jsfiddle

通过按钮单击创建按钮没有单击事件。如何附加此事件以便可以使用任何按钮创建按钮?

1 个答案:

答案 0 :(得分:4)

您需要delegate the event handler才能使用动态生成的元素。

  

事件委托允许我们将单个事件侦听器附加到父元素,该元素将为匹配选择器的所有后代触发,无论这些后代现在是存在还是将来添加。

您可以使用on()方法委派处理程序,如下所示:

$(document).on("click",".button",function() {})

Updated Fiddle