XML DOM replace node
- Föregående sida DOM ta bort noder
- Nästa sida DOM skapa noder
replaceChild() metoden ersätter specificerade noder.
nodeValue-attributet ersätter text i textnoden.
Exempel
Följande exempel använder XML-filer books.xml.
Funktion loadXMLDoc(),som ligger i extern JavaScript, används för att ladda XML-filer.
- Ersätt elementnod
- Detta exempel använder replaceChild() för att ersätta den första <book>-noden.
- Ersätt data i textnoden
- Detta exempel använder nodeValue-attributet för att ersätta data i textnoden.
Ersätt elementnod
replaceChild() metoden används för att ersätta noder.
Följande kodsnutt ersätter den första <book>-elementen:
xmlDoc=loadXMLDoc("books.xml"); x = xmlDoc.documentElement; //Skapa en book-element, en title-element och en textnod newNode = xmlDoc.createElement("book"); newTitle = xmlDoc.createElement("title"); newText = xmlDoc.createTextNode("Hello World"); //Lägg till textnoden till title-noden newTitle.appendChild(newText); //Lägg till title-noden till book-noden newNode.appendChild(newTitle); y = xmlDoc.getElementsByTagName("book")[0]; //Använd denna nya nod för att ersätta den första book-noden x.replaceChild(newNode, y);
Exempel förklaring:
- Genom att använda loadXMLDoc() Ladda "books.xml" Ladda xmlDoc"
- Skapa en ny elementnod <book>
- Skapa en ny elementnod <title>
- Skapa en ny textnod med texten "Hello World"
- Lägg till denna nya textnod till den nya elementnoden <title>
- Lägg till denna nya elementnod <title> till den nya elementnoden <book>
- Ersätt den första <book>-elementnoden med en ny <book>-elementnod
Ersätt data i textnoden
replaceData() metoden används för att ersätta data i textnoden.
replaceData() metoden har tre parametrar:
- offset - Var tecknen börjar ersättas. Offset-värdet börjar vid 0.
- length - Antalet tecken som ska ersättas
- string - Strängen som ska infogas
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.replaceData(0,8,"hello");
Exempel förklaring:
- Genom att använda loadXMLDoc() Ladda "books.xml" Ladda xmlDoc"
- Hämta textnoden för den första <title>-elementnoden
- Använd replaceData-metoden för att ersätta de första 8 tecknen i textnoden med "hello"
Använd nodeValue-attributet
Det är enklare att ersätta textnodens data med nodeValue-attributet.
Följande kodsnutt kommer att ersätta textnoden för det första <title>-elementet med "Easy Italian":
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.nodeValue="Hello World";
Exempel förklaring:
- Genom att använda loadXMLDoc() Ladda "books.xml" Ladda xmlDoc"
- Hämta textnoden för den första <title>-elementnoden
- Använd nodeValue-attributet för att ändra textnodens text
Du kan Ändra nod Läs mer om att ändra nodvärden i detta avsnitt.
- Föregående sida DOM ta bort noder
- Nästa sida DOM skapa noder