I’m creating a series of div boxes that lets users add/remove items from each box with jQuery. I find that after I add a new element to a box, the click function I have bound to that element will not respond. Here’s roughly what my code looks like:
$(".add").click(function() {
$("#targetbox").append("<span class='remove'>This element was added</span>");
});
$(".remove").click(function() {
alert("removing");
$(this).remove();
});
If I pre-populate #targetbox with items, they respond to the click function. It’s only the items that are dynamically added that do not respond to the function.
Add the click method directly to your newly appended element
Or use the
.live()method that will bind the click event for you after appending any new.removeelements