Skip to main content

Bug Tracker

Side navigation

#10148 closed bug (fixed)

Opened August 26, 2011 07:21PM UTC

Closed May 28, 2012 10:38PM UTC

hidden inputs are not :enabled in IE6/7

Reported by: jquery@blinkinglights.org Owned by:
Priority: low Milestone: None
Component: selector Version: 1.6.2
Keywords: Cc:
Blocked by: Blocking:
Description

I would expect that is(':enabled') implies !is(':disabled') and vice versa, and this seems to be the case in most browsers. However, in IE 7.0.5730.13, my test case fails when it finds an <input type="hidden"> element that is apparently neither enabled nor disabled.

Link to test case: http://jsfiddle.net/joshuaecook/3fvJ7/1/

Attachments (0)
Change History (3)

Changed August 26, 2011 08:48PM UTC by timmywil comment:1

component: unfiledselector
priority: undecidedlow
status: newopen
summary: is(':enabled') and is(':disabled') are not complementary in IE7hidden inputs are not :enabled in IE6/7

Changed August 27, 2011 08:54PM UTC by dmethvin comment:2

Lots of ancient history here.

https://github.com/jquery/sizzle/commit/93e33dc2a41e2b0aa0e1e1c66368f5d224da80e1

As of that commit in 2008, a disabled/enabled element must have a property that is a boolean value, so that :enabled checks elem.disabled===false and won't say an arbitrary element is enabled. The check for type !== "hidden" predates the Github repo and seems to be the real issue here.

Logically it does seem like these should be complements of each other, but it's been broken this way for a LONG time.

Changed May 28, 2012 10:38PM UTC by timmywil comment:3

resolution: → fixed
status: openclosed