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 comment:1
component: | unfiled → selector |
---|---|
priority: | undecided → low |
status: | new → open |
summary: | is(':enabled') and is(':disabled') are not complementary in IE7 → hidden inputs are not :enabled in IE6/7 |
Changed August 27, 2011 08:54PM UTC by 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 comment:3
resolution: | → fixed |
---|---|
status: | open → closed |
Simplified test case: http://jsfiddle.net/timmywil/3fvJ7/6/