我有一个html div
元素,其中包含许多HTML-5 data-
属性来存储额外的
带元素的数据。我知道我们可以使用jquery的removeAttr
删除特定属性
但我想知道有没有办法删除data-
all atonce?
答案 0 :(得分:7)
不,你必须循环遍历它们并单独删除它们。 E.g:
var $div = $("selector for the div"),
attrs = $div[0].attributes,
name,
index;
for (index = attrs.length - 1; index >= 0; --index) {
name = attrs[index].nodeName;
if (name.substring(0, 5) === "data-") {
$div.removeAttr(name);
}
}
......或类似的东西。
答案 1 :(得分:6)
不知道有任何批发方式这样做。您必须使用类似
的内容遍历元素的属性var el = document.querySelector('p');
for (var i=0; i<el.attributes.length; i++)
if (/^data-/i.test(el.attributes[i].name))
el.removeAttribute(el.attributes[i].name);