Bug Tracker

Opened 11 years ago

Closed 11 years ago

Last modified 11 years ago

#11588 closed bug (invalid)

.on doesn't work with clone elements

Reported by: rasec <[email protected]…> Owned by:
Priority: low Milestone: None
Component: event Version: 1.7.1
Keywords: Cc:
Blocked by: Blocking:


The .on function apparently doesn't work with elements that has been cloned and appended to the DOM dynamically. I tried it using .live and works perfectly.

.on example: http://jsfiddle.net/rasec/AdGye/3/

.live example http://jsfiddle.net/rasec/MTP67/3/

Tested in Firefox 11 and Chromium 17

Change History (2)

comment:1 Changed 11 years ago by sindresorhus

Component: unfiledevent
Priority: undecidedlow
Resolution: invalid
Status: newclosed

That's because the element doesn't exist when you bind to it. The normal .on() works like the old .bind().

Either use

event delegation: $(".bet").on('click', ".addbetbutton", function() {});

or live using .on(): $(document).on('click', ".addbetbutton", function() {});

Last edited 11 years ago by sindresorhus (previous) (diff)

comment:2 Changed 11 years ago by rasec <[email protected]…>

My mistake, thanks a lot and sorry for the inconvience

Note: See TracTickets for help on using tickets.