XML DOM 改变节点值
XML DOM nodeValue 属性用于改变节点内容文本
XML DOM setAttribute() 方法用于改变属性值
改变元素的文本内容
在 DOM 中,每种成分都是节点
元素节点没有文本值
元素节点的文本存储在子节点中,该节点称为文本节点
改变元素文本的方法,就是改变这个子节点(文本节点)的值
改变文本节点的值
XML DOM nodeValue 属性可用于改变文本节点的值
下面的 JavaScript 代码片段改变了第一个 <title> 元素的文本节点值
xmlDoc=loadXMLDoc("/static/media/dom/books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.nodeValue="Easy Cooking";
-
使用
loadXMLDoc()
函数把 "/static/media/dom/books.xml" 载入 xmlDoc 中 -
获取第一个 <title> 元素的文本节点
-
把该文本节点的节点值更改为 "Easy Cooking"
延伸
遍历并更改所有 <title> 元素的文本节点: 运行范例 »
改变属性的值
在 DOM 中,属性也是节点
与元素节点不同,属性节点拥有文本值
改变属性的值的方法,就是改变它的文本值
可以通过使用 setAttribute() 方法或属性节点的 nodeValue 属性来完成这个任务
通过使用 setAttribute() 改变属性
XML DOM setAttribute() 方法用于改变已有属性的值,或创建新属性
注意: 如果属性不存在,则创建一个新属性(拥有指定的名称和值)
下面的 JavaScript 代码片段改变了 <book> 元素的 category 属性
xmlDoc=loadXMLDoc("/static/media/dom/books.xml"); x=xmlDoc.getElementsByTagName('book'); x[0].setAttribute("category","food");
-
使用
loadXMLDoc()
函数把 "/static/media/dom/books.xml" 载入 xmlDoc 中 -
获取第一个 <book> 元素
-
把 "category" 属性的值更改为 "food"
延伸
遍历所有的 <title> 元素并添加一个新属性: 运行范例 »
通过使用 nodeValue 改变属性
XML DOM nodeValue 属性可用于更改属性节点的值
xmlDoc=loadXMLDoc("/static/media/dom/books.xml"); x=xmlDoc.getElementsByTagName("book")[0] y=x.getAttributeNode("category"); y.nodeValue="food";
-
使用
loadXMLDoc()
函数把 "/static/media/dom/books.xml" 载入 xmlDoc 中 -
获取第一个 <book> 元素的 "category" 属性
-
把该属性节点的值更改为 "food"