我有一个OL,其中包含带有小插入按钮的LI:
<li id="123">
<button class="action1">Do 1</button>
<button class="action2">Do 2</button>
</li>
我的jquery已经在文档加载上设置了函数:
$('.action1').on('click', function() {
// do stuff
});
仅在我追加到列表时:
li = '<li...' //defines li item here
$('#myol').append(li);
按钮不做任何事情。我想这是因为在创建listitem之前附加了侦听器,但是将侦听器附加到新创建的项目的正确方法是什么(甚至更好,将它们设置为新创建的项目的方式?
答案 0 :(得分:0)
您可以将事件附加到您的动态元素:
$('body').on('click', '.action1', function() {
// do something
});
这适用于所有带有类&#39; action1&#39;的标签。在体内,无论是已存在还是以后动态添加。