Najnowsze tutoriale tworzenie stron internetowych
 

XML DOM usuwanie węzłów


removeChild() Metoda usuwa określonego węzła.

removeAttribute() Metoda usuwa określony atrybut.


Spróbuj sam - przykłady

Przykłady użyć pliku XML Books.xml .

Usuń węzeł elementu
W tym przykładzie użyto removeChild() , aby usunąć pierwszy <book> element.

Usuń bieżący węzeł elementu
W tym przykładzie użyto parentNode i removeChild() , aby usunąć bieżącą <book> element.

Usuń węzeł tekstowy
W tym przykładzie użyto removeChild() , aby usunąć węzeł tekstowy z pierwszego <title> elementu.

Usunąć tekst węzła tekstowego
Ten przykład używa nodeValue() właściwość, aby usunąć węzeł tekstowy pierwszego <title> elementu.

Usuń atrybut po nazwie
W tym przykładzie użyto removeAttribute() w celu usunięcia "category" atrybut z pierwszego <book> elementu.

Usuń atrybuty autorem obiektu
W tym przykładzie użyto removeAttributeNode() , aby usunąć wszystkie atrybuty ze wszystkich <book> elementów.

×

nagłówek


Usuń węzeł elementu

removeChild() Metoda usuwa określonego węzła.

Kiedy węzeł jest usuwany, wszystkie jego węzły potomne są również usuwane.

Ten kod usunie pierwszy <book> element z załadowanym xml:

Przykład

y = xmlDoc.getElementsByTagName("book")[0];

xmlDoc.documentElement.removeChild(y);
Spróbuj sam "

Przykład wyjaśnił:

  1. Załóżmy, że " Books.xml " jest ładowany xmldoc
  2. Ustaw zmienną Y może być węzeł elementu do usunięcia
  3. Usuń węzeł elementu za pomocą removeChild() metody z węzła nadrzędnego

Usuń Myself - Usunięcie bieżącego węzła

removeChild() metoda jest jedynym sposobem na usunięcie określonego węzła.

Po przejściu do węzła, który chcesz usunąć, możliwe jest usunięcie tego węzła za pomocą właściwości parentNode i removeChild() metodę:

Przykład

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

x.parentNode.removeChild(x);
Spróbuj sam "

Przykład wyjaśnił:

  1. Załóżmy, że " Books.xml " jest ładowany do xmldoc
  2. Ustaw zmienną Y może być węzeł elementu do usunięcia
  3. Usuń węzeł elementu za pomocą właściwości parentNode i removeChild() metoda

Usuwanie węzła tekstowego

removeChild() Sposób ten może być również stosowany do usuwania węzeł tekście:

Przykład

x = xmlDoc.getElementsByTagName("title")[0];
y = x.childNodes[0];
x.removeChild(y);
Spróbuj sam "

Przykład wyjaśnił:

  1. Załóżmy, że " Books.xml " jest ładowany do xmldoc
  2. Ustaw zmienną x jako węzeł Element pierwszy tytuł
  3. Ustaw zmienną y jako węzeł tekstowy do usunięcia
  4. Usuń węzeł elementu za pomocą removeChild() metody z węzła nadrzędnego

To nie jest bardzo powszechne w użyciu removeChild() po prostu usunąć tekst z węzła. Nieruchomość nodeValue może być stosowany zamiast. Zobacz następny akapit.


Usunąć węzła tekstowego

Nieruchomość nodeValue może być wykorzystana do zmiany wartości węzła tekstu:

Przykład

xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue = "";
Spróbuj sam "

Przykład wyjaśnił:

  1. Załóżmy, że " Books.xml " jest ładowany do xmldoc
  2. Uzyskaj pierwszy węzeł podrzędny pierwszy tytuł elementu.
  3. Użyj właściwości nodeValue aby usunąć tekst z węzła tekstowego

Pętli i zmienić węzeł tekstowy wszystkich <title> elementów: Spróbuj sam


Usuń węzłem atrybutu według nazwy

removeAttribute() Metoda usuwa węzeł atrybutu przez jego nazwę.

Przykład: removeAttribute('category')

Ten kod usuwa "category" atrybut w pierwszej <book> element:

Przykład

x = xmlDoc.getElementsByTagName("book");
x[0].removeAttribute("category");
Spróbuj sam "

Przykład wyjaśnił:

  1. Załóżmy, że " Books.xml " jest ładowany do xmldoc
  2. Użyj getElementsByTagName() , aby uzyskać książek węzłów
  3. Usunąć "category" atrybut stanowić elementu węzła pierwszą książkę

Pętli i usunąć "category" atrybut wszystkich <book> elementów: Spróbuj sam


Usuń węzły atrybutów ze względu na cel

Metoda removeAttributeNode () usuwa węzeł atrybutu, przy użyciu obiektu węzła jako parametr.

Przykład: removeAttributeNode(x)

Ten kod usuwa wszelkie atrybuty wszystkich <book> elementów:

Przykład

x = xmlDoc.getElementsByTagName("book");

for (i = 0; i < x.length; i++) {
    while (x[i].attributes.length > 0) {
        attnode = x[i].attributes[0];
        old_att = x[i].removeAttributeNode(attnode);
    }
}
Spróbuj sam "

Przykład wyjaśnił:

  1. Załóżmy, że " Books.xml " jest ładowany do xmldoc
  2. Użyj getElementsByTagName() , aby uzyskać wszystkie węzły książki
  3. Dla każdego elementu książki sprawdzić, czy są jakieś atrybuty
  4. Chociaż istnieją atrybuty w elemencie książki, usunąć atrybut