Sostituzione dei nodi DOM XML

replaceChild() Il metodo sostituisce il nodo specificato.

nodeValue L'attributo sostituisce il testo del nodo di testo.

Sostituire il nodo di elemento

replaceChild() Il metodo viene utilizzato per sostituire i nodi.

Il seguente frammento di codice sostituisce il primo elemento <book>:

Esempio

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.documentElement;
// Creare un elemento book, un elemento title e un nodo di testo
newNode=xmlDoc.createElement("book");
newTitle=xmlDoc.createElement("title");
newText=xmlDoc.createTextNode("Un nuovo libro");
// Aggiungere il nodo di testo al nodo title
newTitle.appendChild(newText);
// Aggiungere questo nodo title al nodo book
newNode.appendChild(newTitle);
y=xmlDoc.getElementsByTagName("book")[0];
// Sostituire il primo nodo book con il nuovo nodo
x.replaceChild(newNode,y);

亲自试一试

例子解释:

  1. books.xml 加载到 xmlDoc
  2. Creare un nuovo nodo di elemento <book>
  3. Creare un nuovo nodo di elemento <title>
  4. Creare un nuovo nodo di testo contenente il testo "Un nuovo libro"
  5. Aggiungere questo nuovo nodo di testo al nuovo nodo di elemento <title>
  6. Aggiungere questo nuovo nodo di elemento <title> al nuovo nodo di elemento <book>
  7. Sostituire il primo nodo di elemento <book> con un nuovo nodo di elemento <book>

Sostituire i dati del nodo di testo

replaceData() Il metodo viene utilizzato per sostituire i dati del nodo di testo.

replaceData() Il metodo ha tre parametri:

  • offset - Da dove iniziare la sostituzione di caratteri. Il valore di offset parte da zero
  • length - Il numero di caratteri da sostituire
  • string - La stringa da inserire

Esempio

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.replaceData(0,4,"Un nuovo libro");

亲自试一试

例子解释:

  1. books.xml 加载到 xmlDoc
  2. 获取第一个 <title> 元素节点的文本节点
  3. 使用 replaceData() Il metodo sostituisce i primi otto caratteri del nodo di testo con "Un nuovo libro"

Utilizzare l'attributo nodeValue

使用 nodeValue Le proprietà sostituiscono più facilmente i dati del nodo di testo.

Il seguente frammento di codice sostituirà il testo del primo elemento <title> con "Un nuovo libro":

Esempio

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.nodeValue="un nuovo libro";

亲自试一试

例子解释:

  1. books.xml 加载到 xmlDoc
  2. 获取第一个 <title> 元素节点的文本节点
  3. 使用 nodeValue 属性来更改文本节点的文本

您可以在 改变节点 这一章中阅读有关更改节点值的更多内容。