Skip to main content

Bug Tracker

Side navigation

#9595 closed bug (fixed)

Opened June 15, 2011 07:41PM UTC

Closed September 22, 2011 01:07AM UTC

Last modified August 09, 2012 04:12AM UTC

.click() event doesn't automatically trigger .change() event in IE7 / IE8

Reported by: jaredcobb@jaredcobb.com Owned by:
Priority: low Milestone: 1.next
Component: event Version: 1.6.1
Keywords: Cc:
Blocked by: Blocking:
Description

In jQuery 1.6.1, when you trigger a .click() event, the .change() event also automatically fires. However this is not the case in Internet Explorer 7 and 8 (haven't tested older versions). I created a simple example: http://jsfiddle.net/wDKPN/27/

Background: It looks like in jQuery 1.4.4 (all browsers) the .click() event did not also automatically fire the .change() event. I assume the new behavior is on purpose, but simply not working properly in IE7/8

Attachments (0)
Change History (13)

Changed June 15, 2011 07:47PM UTC by rwaldron comment:1

component: unfiledevent
priority: undecidedlow
resolution: → duplicate
status: newclosed

Changed June 15, 2011 07:47PM UTC by rwaldron comment:2

Duplicate of #9274.

Changed June 15, 2011 08:13PM UTC by jaredcobb comment:3

Replying to [comment:2 rwaldron]:

Duplicate of #9274.

I don't believe this is a duplicate. My description is very different than #9274. Can this be re-opened? Please read my description, and you'll see that you can replicate it on jsfiddle

Changed June 15, 2011 09:18PM UTC by rwaldron comment:4

resolution: duplicate
status: closedreopened

Changed June 20, 2011 02:54AM UTC by dmethvin comment:5

status: reopenedopen

I just tested this case all the way back to jQuery 1.2.6 in IE6. A programmatic $().click() hasn't ever fired a change. Seems like it should though.

Changed September 09, 2011 03:47AM UTC by dmethvin comment:6

Simplified non-jQuery test case for reference, can't test it on IE atm:

http://jsfiddle.net/dmethvin/zpnAf/

Changed September 14, 2011 11:11AM UTC by anonymous comment:7

I've got the problem that IE doesn't even fire click() at all, also not live('click',... nor bind()

Changed September 14, 2011 11:14AM UTC by dvdbrander comment:8

Replying to [comment:7 anonymous]:

I've got the problem that IE doesn't even fire click() at all, also not live('click',... nor bind()

Sorry, forgot to edit my name, and found out it only fires on buttons, while in other browsers it also fires on divs and others.

Changed September 22, 2011 01:07AM UTC by dmethvin comment:9

resolution: → fixed
status: openclosed

In the 1.7 change-event rewrite, this works fine for jQuery-attached handlers (the original test case). However, a programmatic click does not fire the inline onchange handler until the blur event. It's a split decision, but since it fixes the OP's case I'll close this as fixed. In general, obscure issues with inline handlers are a wontfix for jQuery, see http://docs.jquery.com/Won%27t_Fix .

Changed August 08, 2012 10:57PM UTC by dan@onemoretake.com comment:10

I just tried the original jsfiddle in IE8/7 (http://jsfiddle.net/wDKPN/27/) and this is still not fixed as described in the original bug report. Can this be re-opened or am I misunderstanding?

Changed August 08, 2012 10:59PM UTC by dan@onemoretake.com comment:11

Forgot to mention - I tried it using jQuery 1.7.2

Changed August 09, 2012 01:24AM UTC by dmethvin comment:12

Seems to work for me on Edge (1.8), you had 1.6 selected.

http://jsfiddle.net/wDKPN/57/

Changed August 09, 2012 04:12AM UTC by dan@onemoretake.com comment:13

Replying to [comment:12 dmethvin]:

Seems to work for me on Edge (1.8), you had 1.6 selected. http://jsfiddle.net/wDKPN/57/

I was using 1.7.2. Agreed that it works correctly on Edge. I guess there is no reason to reopen it then. Thanks