Tworzenie węzłów DOM XML
- Poprzednia strona Zastępowanie węzłów DOM
- Następna strona Dodawanie węzłów DOM
Tworzenie nowego węzła elementu
createElement()
Metoda tworzy nowy węzeł elementu:
Przykład 1
newElement = xmlDoc.createElement("edition"); xmlDoc.getElementsByTagName("book")[0].appendChild(newElement);
Wyjaśnienie przykładu:
- Załóżmy, że plik books.xml został załadowany do
xmlDoc
w - Utwórz nowy węzeł elementu <edition>
- Dodaj ten węzeł elementu do pierwszego elementu <book>
Przykład 2
Przejdź przez wszystkie i dodaj element do wszystkich elementów <book>:
for (i = 0; i < xLen; i++) { newEle = xmlDoc.createElement("edition"); newText = xmlDoc.createTextNode("Pierwsza edycja"); newEle.appendChild(newText); x[i].appendChild(newEle); }
Tworzenie nowego węzła właściwości
createAttribute()
Używane do tworzenia nowych węzłów właściwości:
Przykład 1
newAtt = xmlDoc.createAttribute("edition"); newAtt.nodeValue = "first edition"; xmlDoc.getElementsByTagName("title")[0].setAttributeNode(newAtt);
Wyjaśnienie przykładu:
- Załóżmy, że plik books.xml został załadowany do
xmlDoc
w - Tworzenie nowego węzła właściwości
"edition"
- Ustaw wartość tego węzła właściwości na
"first"
- Dodaj ten nowy węzeł właściwości do pierwszego elementu <title>
Przykład 2
Przejdź przez wszystkie elementy <title> i dodaj nowy węzeł właściwości:
for (i = 0; i < xLen; i++) { newAtt = xmlDoc.createAttribute("edition"); newAtt.value = "first edition"; x[i].setAttributeNode(newAtt); }
Jeśli właściwość już istnieje, zastąpi ją nową właściwością.
Użycie setAttribute() do tworzenia właściwości
Ponieważ setAttribute()
Metoda tworzy nową właściwość, jeśli ona nie istnieje, więc można ją również używać do tworzenia nowych właściwości.
Przykład 1
xmlDoc.getElementsByTagName('book')[0].setAttribute("edition","first");
Wyjaśnienie przykładu:
- Załóżmy, że plik books.xml został załadowany do
xmlDoc
w - Ustaw właściwość pierwszego elementu <book> na
"edition"
Wartość właściwości ustawiona na"first"
Przykład 2
Przejdź przez wszystkie elementy <title> i dodaj nową właściwość:
for(i = 0; i < x.length; i++) { x[i].setAttribute("edition", "first edition"); }
Tworzenie węzła tekstowego
createTextNode()
Metoda tworzy nowy węzeł tekstowy:
Przykład 1
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 został załadowany do
xmlDoc
w - Utwórz nowy węzeł elementu <edition>
- Utwórz nowy węzeł tekstowy, który zawiera tekst
"first"
- Dodaj ten nowy węzeł tekstowy do nowego węzła elementu
- Dodaj nowy węzeł elementu do pierwszego elementu <book>:
Przykład 2
Dodaj element węzła z węzłem tekstowym do wszystkich elementów <book>:
for (i = 0; i < xLen; i++) { newEle = xmlDoc.createElement("edition"); newText = xmlDoc.createTextNode("Pierwsza edycja"); newEle.appendChild(newText); x[i].appendChild(newEle); }
Utwórz węzeł CDATA Section
createCDATASection()
Metoda tworzy nową sekcję CDATA.
Przykład 1
newCDATA = xmlDoc.createCDATASection("Nowa Roczna Promocja & Ograniczona Oferta"); xmlDoc.getElementsByTagName("book")[0].appendChild(newCDATA);
Wyjaśnienie przykładu:
- Załóżmy, że plik books.xml został załadowany do
xmlDoc
w - Utwórz nową sekcję CDATA
- Dodaj ten nowy węzeł CDATA do pierwszego elementu <book>:
Przykład 2
Przechodzenie przez pętlę i dodawanie sekcji CDATA do wszystkich elementów <book>:
x = xmlDoc.getElementsByTagName("book"); xLen = x.length; newtext = "Nowa Roczna Promocja & Ograniczona Oferta"; for (i = 0; i < xLen; i++) { newCDATA = xmlDoc.createCDATASection(newtext); x[i].appendChild(newCDATA); }
Utwórz węzeł komentarza
createComment()
Metoda tworzy nowy węzeł komentarza.
Przykład 1
newComment = xmlDoc.createComment("Zmodyfikowano w lutym 2024 roku"); xmlDoc.getElementsByTagName("book")[0].appendChild(newComment);
Wyjaśnienie przykładu:
- Załóżmy, że plik books.xml został załadowany do
xmlDoc
w - Utwórz nowy węzeł komentarza
- Dodaj ten nowy węzeł komentarza do pierwszego elementu <book>:
Przykład 2
Przechodzenie przez pętlę i dodawanie węzłów komentarzy do wszystkich elementów <book>:
x = xmlDoc.getElementsByTagName("book"); xLen = x.length for (i = 0; i < xLen; i++) { newComment = xmlDoc.createComment("Zmodyfikowano w lutym 2024 roku"); x[i].appendChild(newComment); }
- Poprzednia strona Zastępowanie węzłów DOM
- Następna strona Dodawanie węzłów DOM