#945 closed bug (fixed)
<INPUT name="length"> cannot be found under IE
Reported by: | Owned by: | ||
---|---|---|---|
Priority: | minor | Milestone: | 1.1.3 |
Component: | core | Version: | 1.1a |
Keywords: | ie6 ie7 | Cc: | |
Blocked by: | Blocking: |
Description
This is really incredible and took me some time to find out !
Problem
Load the mockup in IE6 or IE7, you'll get "0" instead of "1" printed on the alert box.
Workaround
Don't set input name attributes to "length".
Mockup
<html> <head> <script type="text/javascript" src="http://jquery.com/src/jquery-latest.js"></script> <script type="text/javascript"> $(function() { alert($('INPUT').length) }); </script> </head> <body> <input name="length"> </body> </html>
Change History (5)
comment:1 Changed 16 years ago by
Priority: | major → minor |
---|
comment:2 Changed 16 years ago by
I believe I finally tracked this down to the jQuery.merge method. The for loop in that method isn't running because the expression, second.length
, points to the node instead of pointing to the size of the array.
comment:3 Changed 16 years ago by
Milestone: | → 1.1.3 |
---|---|
need: | → Test Case |
Note: See
TracTickets for help on using
tickets.
I've setup a test page with firebug lite here: http://brandon.jquery.com/testing/945/