XML DOM ändra nodvärde
- Föregående sida DOM hämta nod
- Nästa sida DOM tar bort nod
nodeValue egenskapen används för att ändra nodvärdet.
setAttribute() metoden används för att ändra egenskapens värde.
Exempel
Följande exempel använder XML-filer books.xml.
Funktion loadXMLDoc()Ligger utanför JavaScript, används för att ladda XML-filer.
- Ändra elementets textnod
- Detta exempel använder nodeValue egenskapen för att ändra textnoden för det första <title> elementet i "books.xml".
- Genom att använda setAttribute för att ändra egenskapsvärdet
- Detta exempel använder setAttribute() metod för att ändra värdet för "category" egenskapen för det första <book> elementet.
- Genom att använda nodeValue för att ändra egenskapsvärdet
- Detta exempel använder nodeValue egenskapen för att ändra värdet för "category" egenskapen för det första <book> elementet.
Ändra elementets värde
I DOM är varje komponent en nod. Elementnoder har inga textvärden.
Texten för elementnoden lagras i undernoder. Denna nod kallas textnod.
Metoden att ändra elementets text är att ändra värdet för denna undernod (textnod).
Ändra textnodens värde
nodeValue egenskapen kan användas för att ändra textnodens värde.
Följande kodfragment ändrar textnoden för det första <title> elementet:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.nodeValue="Hello World";
Exempel förklaring:
- Genom att använda loadXMLDoc() Ändra "books.xml"Ladda xmlDoc"
- Hämta textnoden för det första <title> elementet
- Ändra värde för denna textnod till "Hello World"
Genomgå och ändra textnoderna för alla <title> element:TIY
Ändra egenskapens värde
I DOM är egenskaper också noder. Skiljt från elementnoder har egenskapsnoder textvärden.
Metoden att ändra egenskapens värde är att ändra dess textvärde.
Det är möjligt att utföra denna uppgift genom att använda setAttribute() metod eller nodeValue egenskapen för nodpunkten.
Genom att använda setAttribute() för att ändra egenskaper
setAttribute()-metoden sätter värdet för en befintlig egenskap eller skapar en ny egenskap.
Följande kod ändrar category-egenskapen för <book>-elementet:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName('book'); x[0].setAttribute("category","child");
Exempel förklaring:
- Genom att använda loadXMLDoc() Ändra "books.xml"Ladda xmlDoc"
- Hämta den första <book>-elementet
- Ändra värdet för "category"-egenskapen till "child"
Genomgå alla <title> och lägg till en ny egenskap:TIY
Kommentar:Om egenskapsnoden inte finns, skapas en ny egenskap (med angivet namn och värde).
Genom att använda nodeValue ändra egenskap
nodeValue-attributet kan användas för att ändra värdet för egenskapsnoden:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("book")[0] y=x.getAttributeNode("category"); y.nodeValue="child";
Exempel förklaring:
- Genom att använda loadXMLDoc() Ändra "books.xml"Ladda xmlDoc"
- Hämta "category"-egenskapen för den första <book>-elementet
- Ändra värdet för egenskapsnoden till "child"
- Föregående sida DOM hämta nod
- Nästa sida DOM tar bort nod