#6737 closed bug (wontfix)
.attr() does not return "undefined" in IE6/7 for an undefined attribute
Reported by: | Beeper | Owned by: | |
---|---|---|---|
Priority: | low | Milestone: | 1.4.3 |
Component: | attributes | Version: | 1.4.2 |
Keywords: | Cc: | ||
Blocked by: | Blocking: |
Description
On an input-element i want to check an attribute for existence. so i have something like: $('#id').attr('src') !== undefined
Here is the working example for Jquery 1.3.2: http://jsbin.com/oveci
Here is the Bug: http://jsbin.com/oveci/3
It seems to apply only for some HTML-Elements. I tried 'p' and .attr works fine, but for input-elements it returns "" and not "undefined".
Change History (4)
comment:1 Changed 13 years ago by
comment:2 Changed 13 years ago by
Keywords: | docfix added |
---|---|
Priority: | → low |
Resolution: | → wontfix |
Status: | new → closed |
This is not a bug, please see post by dmethvin
comment:3 Changed 13 years ago by
Keywords: | needsdocs added; docfix removed |
---|
comment:4 Changed 12 years ago by
Keywords: | needsdocs removed |
---|
Docs updated: http://api.jquery.com/attr/
Note: See
TracTickets for help on using
tickets.
For attributes that mirror properties on specific DOM elements, such as the
checked
attribute on a checkbox or radio button,.attr()
will return a non-undefined
value.The best cross-browser way to approach this is to check for a falsy value using
if ( $('#id').attr('src') )
rather than checking for a particular value.