[英]JQuery adding events to dynamically created elements
I know this has been asked before but I can't seem to figure out what I'm doing wrong. 我知道以前已经有人问过这个问题,但是我似乎无法弄清楚自己在做什么错。
I am just trying to create some dynamic elements and then attach an event to them using only JQuery. 我只是试图创建一些动态元素,然后仅使用JQuery将事件附加到它们。 The buttons should launch an alert.
按钮应启动警报。
http://jsfiddle.net/XGb7w/1/ http://jsfiddle.net/XGb7w/1/
$(function(){
$('#add').on("click",function(){addItem()});
function addItem() {
var listItem = '<li>' + '<button class="checkBtn"></button>' + '<button class="crossBtn"></button>' + '</li>';
$('ul').append(listItem);
}
$('.crossBtn').on("click", function() {
alert() // Doesn't alert why not?
});
$('.checkBtn').on("click", function() {
alert();// Doesn't alert why not?
})
});
Thank you. 谢谢。
You can do this if you set the on handler at the document level. 如果您在文档级别设置了on处理程序,则可以执行此操作。
http://jsfiddle.net/fbNY9/ http://jsfiddle.net/fbNY9/
$(function () {
$('#add').on("click", function () {
addItem();
});
function addItem() {
var listItem = '<li>' + '<button class="checkBtn" />' + '<button class="crossBtn" />' + '</li>';
$('ul').append(listItem);
}
$(document).on("click",".crossBtn", function () {
alert(); // Doesn't alert why not?
});
$(document).on("click",'.checkBtn', function () {
alert(); // Doesn't alert why not?
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.