XML DOM removeAttributeNode() 方法
XML基础 2023-08-13 15:09:20小码哥的IT人生shichen
XML DOM removeAttributeNode() 方法
定义和用法
removeAttributeNode() 方法从元素中删除指定的属性节点。
语法:
elementNode.removeAttributeNode(node)
参数 | 描述 |
---|---|
node | 必需。要删除的节点。 |
返回值
删除的 Attr 节点。
说明
该方法从当前元素的属性集合中删除(并返回)一个 Attr 节点。如果 DTD 给删除的属性设置了默认值,那么该方法将添加一个新的 Attr 节点,表示这个默认值。用 removeAttribute() 方法代替该方法往往会更简单。
实例
在所有的例子中,我们将使用 XML 文件 books.xml,以及 JavaScript 函数 loadXMLDoc()。
下面代码片段从 "books.xml" 中的所有 <book> 元素中删除 "category" 属性:
xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName('book');
for(i=0;i<x.length;i++)
{
attnode=x.item(i).getAttributeNode("category");
old_att=x.item(i).removeAttributeNode(attnode)
;
document.write("Removed attribute: " + old_att.name + "<br />");
}
输出:
Removed attribute: category
Removed attribute: category
Removed attribute: category
Removed attribute: category
TIY
完整实例【removeAttributeNode() - 删除属性节点】:
<html>
<head>
<script type="text/javascript" src="/demo/example/xdom/loadxmldoc.js">
</script>
</head>
<body>
<script type="text/javascript">
xmlDoc=loadXMLDoc("/demo/example/xdom/books.xml");
x=xmlDoc.getElementsByTagName('book');
for (i=0;i<x.length;i++)
{
while (x[i].attributes.length>0)
{
attnode=x[i].attributes[0];
old_att=x[i].removeAttributeNode(attnode);
document.write("被删除的:" + old_att.nodeName)
document.write(": " + old_att.nodeValue)
document.write("<br />")
}
}
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html