#10656 closed bug (wontfix)
.removeData( list) does not appear to work
Reported by: | Owned by: | Rick Waldron | |
---|---|---|---|
Priority: | low | Milestone: | None |
Component: | data | Version: | 1.6.4 |
Keywords: | Cc: | ||
Blocked by: | Blocking: |
Description
passing a list to removeData is broken as follows (tested in IE 9 and current Chrome):
passing a list does not remove the data:
accessing the data before passing a list causes removeData to error out when passed a list:
And this happens whether the data is assigned via jquery or in the html:
Change History (9)
comment:1 Changed 11 years ago by
Component: | unfiled → data |
---|---|
Owner: | set to Rick Waldron |
Status: | new → assigned |
comment:2 Changed 11 years ago by
Priority: | undecided → low |
---|---|
Resolution: | → wontfix |
Status: | assigned → closed |
comment:3 Changed 11 years ago by
Please see the third fiddle from the original ticket: http://jsfiddle.net/mKPYN/4/
comment:4 Changed 11 years ago by
For clarification: the third fiddle from the original ticket appears to work, but only because the script errors out before it gets to the line where it would update the DOM.
comment:5 Changed 11 years ago by
Keywords: | needsdocs added |
---|
jQuery will remove data properties that it has created with data() (these are not placed on the DOM element itself), but will not remove data-* attributes. The extent of jQuery's involvement with data-* attributes is a read-only relationship.
comment:6 Changed 11 years ago by
The fiddle was using 1.6.4 and the api page is pretty clear that arrays are a 1.7 feature.
I have updated the .removeData()
page to make it excruciatingly explicitly incredibly verbosely clear that we don't touch data-
attributes with this api. There is a whole article that says more about the whole topic:
http://www.learningjquery.com/2011/09/using-jquerys-data-apis
comment:7 Changed 11 years ago by
Thank you, I did overlook the "version added: 1.7" on the api documentation, I didn't realize the documentation included unreleased features.
comment:8 Changed 11 years ago by
Well jQuery 1.7 is now shipping, as of 10 minutes ago. The docs were updated yesterday. If we don't update the docs before we ship then people won't know what is new. It's hard to do it all simultaneously.
comment:9 Changed 11 years ago by
Keywords: | needsdocs removed |
---|
.removeData()
will not remove the actual data-* attributes from the DOM element. To actually remove an attribute, you must useremoveAttr()