我有这样的脚本:
$(document).ready(function() {
$('.button').click(function() {
var button = document.createElement('button');
$(button).addClass('button');
$(button).html('Button');
$(button).appendTo('.container');
});
});
示例:jsfiddle
通过按钮单击创建按钮没有单击事件。如何附加此事件以便可以使用任何按钮创建按钮?
答案 0 :(得分:4)
您需要delegate the event handler才能使用动态生成的元素。
事件委托允许我们将单个事件侦听器附加到父元素,该元素将为匹配选择器的所有后代触发,无论这些后代现在是存在还是将来添加。
您可以使用on()
方法委派处理程序,如下所示:
$(document).on("click",".button",function() {})