XML DOM Utwórz węzły
Spróbuj sam - przykłady
Poniższe przykłady wykorzystują plik XML books.xml .
W tym przykładzie zastosowano metodę createElement() w celu utworzenia nowego węzła elementu i appendChild() w celu dodania go do węzła.
W tym przykładzie użyto metody createAttribute() w celu utworzenia nowego węzła atrybutu i metody setAttributeNode() w celu wstawienia go do elementu.
W tym przykładzie zastosowano setAttribute() do utworzenia nowego atrybutu dla elementu.
W tym przykładzie zastosowano metodę createTextNode() w celu utworzenia nowego węzła tekstowego i appendChild() w celu dodania go do elementu.
W tym przykładzie zastosowano metodę createCDATAsection() w celu utworzenia węzła sekcji CDATA i metodę appendChild() w celu dodania go do elementu.
W tym przykładzie zastosowano metodę createComment() w celu utworzenia węzła komentarza i appendChild() w celu dodania go do elementu.
Utwórz nowy węzeł elementu
Metoda createElement() tworzy nowy węzeł elementu:
Przykład
newElement = xmlDoc.createElement("edition");
xmlDoc.getElementsByTagName("book")[0].appendChild(newElement);
Wyjaśnienie przykładu:
- Załóżmy, że plik " books.xml " jest załadowany do xmlDoc
- Utwórz nowy węzeł elementu <edition>
- Dołącz węzeł elementu do pierwszego elementu <book>
Przewiń i dodaj element do wszystkich elementów <book>:
Utwórz nowy węzeł atrybutu
CreateAttribute () służy do tworzenia nowego węzła atrybutu:
Przykład
newAtt = xmlDoc.createAttribute("edition");
newAtt.nodeValue = "first";
xmlDoc.getElementsByTagName("title")[0].setAttributeNode(newAtt);
Wyjaśnienie przykładu:
- Załóżmy, że plik " books.xml " jest załadowany do xmlDoc
- Utwórz nowy węzeł atrybutu „edycja”
- Ustaw wartość węzła atrybutu na „pierwszy”
- Dodaj nowy węzeł atrybutu do pierwszego elementu <title>
Przejdź przez wszystkie elementy <title> i dodaj nowy węzeł atrybutu:
Jeśli atrybut już istnieje, zostaje zastąpiony nowym.
Utwórz atrybut za pomocą setAttribute()
Ponieważ metoda setAttribute() tworzy nowy atrybut, jeśli atrybut nie istnieje, można jej użyć do utworzenia nowego atrybutu.
Przykład
xmlDoc.getElementsByTagName('book')[0].setAttribute("edition","first");
Wyjaśnienie przykładu:
- Załóżmy, że plik " books.xml " jest załadowany do xmlDoc
- Ustaw wartość atrybutu „edition” na „first” dla pierwszego elementu <book>
Przejdź przez wszystkie elementy <title> i dodaj nowy atrybut:
Utwórz węzeł tekstowy
Metoda createTextNode() tworzy nowy węzeł tekstowy:
Przykład
newEle = xmlDoc.createElement("edition");
newText = xmlDoc.createTextNode("first");
newEle.appendChild(newText);
xmlDoc.getElementsByTagName("book")[0].appendChild(newEle);
Wyjaśnienie przykładu:
- Załóżmy, że plik " books.xml " jest załadowany do xmlDoc
- Utwórz nowy węzeł elementu <edition>
- Utwórz nowy węzeł tekstowy z tekstem „pierwszy”
- Dołącz nowy węzeł tekstowy do węzła elementu
- Dołącz nowy węzeł elementu do pierwszego elementu <book>
Dodaj węzeł elementu z węzłem tekstowym do wszystkich elementów <book>:
Utwórz węzeł sekcji CDATA
Metoda createCDATASection() tworzy nowy węzeł sekcji CDATA.
Przykład
newCDATA = xmlDoc.createCDATASection("Special Offer & Book Sale");
xmlDoc.getElementsByTagName("book")[0].appendChild(newCDATA);
Wyjaśnienie przykładu:
- Załóżmy, że plik " books.xml " jest załadowany do xmlDoc
- Utwórz nowy węzeł sekcji CDATA
- Dołącz nowy węzeł CDATA do pierwszego elementu <book>
Przewiń i dodaj sekcję CDATA do wszystkich elementów <book>:
Utwórz węzeł komentarza
Metoda createComment() tworzy nowy węzeł komentarza.
Przykład
newComment = xmlDoc.createComment("Revised March 2015");
xmlDoc.getElementsByTagName("book")[0].appendChild(newComment);
Wyjaśnienie przykładu:
- Załóżmy, że " books.xml " jest ładowany do xmlDoc za pomocą
- Utwórz nowy węzeł komentarza
- Dołącz nowy węzeł komentarza do pierwszego elementu <book>
Przejdź w pętlę i dodaj węzeł komentarza do wszystkich elementów <book>: