Latest web development tutorials

Zaawansowane XML DOM

XML DOM - Advanced

W poprzednich rozdziałach tego poradnika , wprowadziliśmy XML DOM i wykorzystuje metodę XML DOM getElementsByTagName () do pobierania danych z dokumentów XML.

W tym rozdziale będziemy łączyć szereg innych ważnych metod XML DOM.

Można w naszym XML DOM samouczka , aby dowiedzieć się więcej na temat wiedzy XML DOM.


Pobiera wartość elementu

Pliki XML stosowane w następujących przykładach: Books.xml .

Poniższy przykład pobiera pierwszą wartość tekstową <title> element:

Przykłady

txt=xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;

Spróbuj »


Pobiera wartość nieruchomości

Poniższy przykład pobiera wartość tekstową pierwszego elementu <title> atrybutu "lang":

Przykłady

txt=xmlDoc.getElementsByTagName("title")[0].getAttribute("lang");

Spróbuj »


Zmień wartość elementu

Poniższy przykład zmienia pierwszą wartość tekstową <title> elementu:

Przykłady

x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.nodeValue="Easy Cooking";

Spróbuj »


Utwórz nową właściwość

Metoda XML DOM setAttribute () może być wykorzystana do zmiany istniejącej wartości nieruchomości lub utwórz nową właściwość.

Poniższy przykład tworzy nowy atrybut (edycja = "pierwszy"), a następnie dodać go do każdego elementu <> książki:

Przykłady

x=xmlDoc.getElementsByTagName("book");

for(i=0;i<x.length;i++)
{
x[i].setAttribute("edition","first");
}

Spróbuj »


Tworzenie elementu

Metoda XML DOM createElement () tworzy nowy węzeł elementu.

Metoda XML DOM createTextNode () tworzy nowy węzeł tekstowy.

XML DOM appendChild () metoda dodaje węzła podrzędnego węzła (po ostatniej węzła potomnego).

Aby utworzyć nowy element o zawartości tekstowej, należy utworzyć nowy element węzła elementu i nowy węzeł tekstowy, a następnie dodaje do istniejących węzłów.

Poniższy przykład tworzy nowy element (<wersja>), z następującym tekstem: po pierwsze, a następnie dodać go do pierwszego elementu <> książki:

Przykłady

newel=xmlDoc.createElement("edition");
newtext=xmlDoc.createTextNode("First");
newel.appendChild(newtext);

x=xmlDoc.getElementsByTagName("book");
x[0].appendChild(newel);

Spróbuj »

Przykłady przedstawione

  • Tworzenie elementu <wersja>
  • Tworzenie wartości "pierwszy" węzeł tekstowy
  • Dołącza węzeł tekstowy do nowego elementu <wersja>
  • Znacznik <wersja> element jest dodawany do pierwszego elementu <book>

Usuwanie elementów

Poniższy przykład usunąć pierwszy <book> element pierwszego węzła:

Przykłady

x=xmlDoc.getElementsByTagName("book")[0];
x.removeChild(x.childNodes[0]);

Spróbuj »

UWAGA: Powyższe przykłady mogą spowodować w zależności od przeglądarki i inne.Firefox traktuje nowych linii, jak puste węzły tekstowe, Internet Explorer nie jest to przypadek. Można w naszym XML DOM tutorialu przeczytaniem więcej na temat tego problemu i jak go uniknąć.