XML DOM Změna hodnot uzlů
Vlastnost nodeValue se používá ke změně hodnoty uzlu.
Metoda setAttribute() se používá ke změně hodnoty atributu.
Zkuste si to sami - příklady
Níže uvedené příklady používají soubor XML books.xml .
Tento příklad používá vlastnost nodeValue ke změně textového uzlu prvního prvku <title> v "books.xml".
Tento příklad používá metodu setAttribute() ke změně hodnoty atributu "category" první <knihy>.
Tento příklad používá vlastnost nodeValue ke změně hodnoty atributu "category" první <book>.
Změňte hodnotu prvku
V DOM je všechno uzel. Uzly prvku nemají textovou hodnotu.
Textová hodnota uzlu prvku je uložena v podřízeném uzlu. Tento uzel se nazývá textový uzel.
Chcete-li změnit textovou hodnotu prvku, musíte změnit hodnotu textového uzlu prvku.
Změňte hodnotu textového uzlu
Vlastnost nodeValue lze použít ke změně hodnoty textového uzlu .
Předpokládejme, že „ knihy.xml “ byl načten do xmlDoc.
Tento kód změní hodnotu textového uzlu prvního prvku <title>:
Příklad
xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue = "new
content"
Vysvětlený příklad:
- Předpokládejme, že „ knihy.xml “ je načten do xmlDoc
- Získejte první podřízený uzel prvku <title>
- Změňte hodnotu uzlu na „ nový obsah “
Projděte a změňte textový uzel všech prvků <title>:
Změňte hodnotu atributu
V modelu DOM jsou atributy uzly. Na rozdíl od uzlů prvků mají uzly atributů textové hodnoty.
Způsob, jak změnit hodnotu atributu, je změnit jeho textovou hodnotu.
To lze provést pomocí metody setAttribute() nebo nastavením vlastnosti nodeValue uzlu atributu.
Změna atributu pomocí setAttribute()
Metoda setAttribute() mění hodnotu atributu .
Pokud atribut neexistuje, vytvoří se nový atribut.
Tento kód mění atribut kategorie prvku <book>:
Příklad
xmlDoc.getElementsByTagName("book")[0].setAttribute("category","food");
Vysvětlený příklad:
- Předpokládejme, že „ knihy.xml “ je načten do xmlDoc
- Získejte první prvek <book>
- Změňte hodnotu atributu „category“ na „food“
Projděte všechny prvky <title> a přidejte nový atribut:
Poznámka: Pokud atribut neexistuje, vytvoří se nový atribut (se zadaným názvem a hodnotou).
Změňte atribut pomocí nodeValue
Vlastnost nodeValue je hodnota uzlu atributu .
Změnou vlastnosti value se změní hodnota atributu.
Příklad
xmlDoc.getElementsByTagName("book")[0].getAttributeNode("category").nodeValue = "food";
Vysvětlený příklad:
- Předpokládejme, že „ knihy.xml “ je načten do xmlDoc
- Získejte atribut "category" prvního prvku <book>
- Změňte hodnotu uzlu atributu na „jídlo“