#10878 ($("select").live("change", function(){ ...broken in IE8 in jQuery 1.7) - jQuery (original) (raw)
Change History (9)
Changed November 23, 2011 09:08PM UTC by tavelli comment:1
this may have more to do with adding new elements by cloning an existing element with a listener attached?
Changed November 24, 2011 08:56PM UTC by dmethvin comment:2
| owner: | → tavelli |
|---|---|
| status: | new → pending |
This seems to work for me in Firefox 8. Is there some specific browser where it failed?
Changed November 25, 2011 09:49PM UTC by tavelli comment:3
| status: | pending → new |
|---|
Fails in IE8. Haven't tested in IE7 or IE6 yet, will on Monday.
Changed November 26, 2011 02:39AM UTC by dmethvin comment:4
| component: | unfiled → event |
|---|---|
| milestone: | None → 1.7.2 |
| owner: | tavelli → dmethvin |
| priority: | undecided → low |
| status: | new → assigned |
I see it now, both the problem and the IE8 in your original title. When the element is cloned it appears the property for _change_attached has been promoted to an attribute and cloned, which means the cloned elements don't receive the event handler patch they need.
Changed November 30, 2011 04:04PM UTC by tavelli comment:5
Do you know of any workaround for this? I tried calling .off() on the select element after its clone and before it is appended back to the page, but no go.
Changed November 30, 2011 04:05PM UTC by dmethvin comment:6
For now the solution is to not clone the element. If you start with a new one it won't incorrectly inherit the attribute that makes it think the event is already attached.
Changed November 30, 2011 04:18PM UTC by tavelli comment:7
The level of hackiness on this is quite high, but calling $("myclonedelement").removeAttr("_change_attached"); after its cloned and before its appended back to the page seems to fix it and work across IE and chrome.
Changed December 15, 2011 03:42PM UTC by dmethvin comment:8
#11033 is a duplicate of this ticket.
Changed January 28, 2012 09:57PM UTC by Dave Methvin comment:9
| resolution: | → fixed |
|---|---|
| status: | assigned → closed |
Fix #10878. Clear oldIE special change/submit flags on a clone.
Changeset: c746f79cc024df41d9300f3b910a8a55b3c91c3e