nod penggantian DOM
XML DOM Gantikan nod
Kaedah replaceChild() menggantikan nod yang ditentukan.
Atribut nodeValue menggantikan teks dalam nod teks.
Contoh berikut menggunakan fail XML buku .xml.
Fungsi loadXMLDoc(), terletak dalam JavaScript luaran, digunakan untuk memuatkan fail XML.
Gantikan nod elemen
Contoh ini menggunakan replaceChild() untuk menggantikan nod <book>
Ganti data dalam nod teks
Contoh ini menggunakan atribut nodeValue untuk menggantikan data dalam nod teks.
Gantikan nod elemen
Kaedah replaceChild() digunakan untuk menggantikan nod.
Coretan kod berikut menggantikan elemen <buku> pertama:
Instance
<!DOCTYPE html> <html> <head> <script src="loadxmldoc.js"> </script> </head> <body> <script> xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.documentElement; //create a book element, title element and a text node newNode=xmlDoc.createElement("book"); newTitle=xmlDoc.createElement("title"); newText=xmlDoc.createTextNode("A Notebook"); //add the text node to the title node, newTitle.appendChild(newText); //add the title node to the book node newNode.appendChild(newTitle); y=xmlDoc.getElementsByTagName("book")[0] //replace the first book node with the new node x.replaceChild(newNode,y); z=xmlDoc.getElementsByTagName("title"); for (i=0;i<z.length;i++) { document.write(z[i].childNodes[0].nodeValue); document.write("<br>"); } </script> </body> </html>
Jalankan Instance»
Klik butang "Jalankan Contoh" untuk melihat contoh dalam talian
Penjelasan contoh:
Gunakan loadXMLDoc() untuk memuatkan "buku .xml" Dalam xmlDoc,
mencipta nod elemen baharu <book>
mencipta nod elemen baharu <title>
Buat nod teks baharu dengan teks "A Notebook"
Tambahkan nod teks baharu ini pada nod elemen baharu <title> >
- Tambahkan nod elemen baharu ini <tajuk> pada nod elemen baharu <buku> Nod elemen <book> baharu
Ganti data dalam nod teks
kaedah replaceData() digunakan untuk menggantikan data dalam nod teks. Kaedah
replaceData() mempunyai tiga parameter: offset - tempat untuk mula menggantikan aksara. nilai offset bermula dengan 0.
- panjang - berapa banyak aksara untuk digantikan
- rentetan - rentetan untuk dimasukkan
Instance
<!DOCTYPE html> <html> <head> <script src="loadxmldoc.js"> </script> </head> <body> <script> xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; document.write(x.nodeValue); x.replaceData(0,8,"Easy"); document.write("<br>"); document.write(x.nodeValue); </script> </body> </html>
Run instance»
Penjelasan contoh:
Gunakan loadXMLDoc() untuk memuatkan "books.xml" ke dalam xmlDoc
Dapatkan <lt; ; Nod teks nod elemen
menggunakan kaedah replaceData untuk menggantikan 8 aksara pertama nod teks dengan "Mudah"
Gunakan atribut nodeValue dan bukannya
Lebih mudah untuk menggantikan data dalam nod teks dengan atribut nodeValue.
Coretan kod berikut akan menggantikan nilai nod teks dalam elemen <tajuk> pertama dengan "Itali Mudah":
Contoh
<!DOCTYPE html> <html> <head> <script src="loadxmldoc.js"> </script> </head> <body> <script> xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; document.write(x.nodeValue); x.nodeValue="Easy Italian"; document.write("<br>"); document.write(x.nodeValue); </script> </body> </html>
Jalankan contoh»
Klik butang "Jalankan contoh" untuk melihat contoh dalam talian
Penjelasan contoh:
Gunakan loadXMLDoc() Muatkan "books.xml" ke dalam xmlDoc
Dapatkan nod teks bagi nod elemen <title>
Gunakan sifat nodeValue untuk menukar teks nod teks ini
Anda boleh membaca lebih lanjut tentang menukar nilai nod dalam bab Menukar Nod.