Tutorial XML DO...login
Tutorial XML DOM
pengarang:php.cn  masa kemas kini:2022-04-13 15:27:56

DOM padam nod


XML DOM Padam nod


Kaedah removeChild() memadamkan nod yang ditentukan.

kaedah removeAttribute() memadamkan atribut yang ditentukan.



tryitimg.gifCuba - Contoh

Contoh di bawah menggunakan fail XML books.xml.
Fungsi loadXMLDoc(), terletak dalam JavaScript luaran, digunakan untuk memuatkan fail XML.

Padamkan nod elemen
Contoh ini menggunakan removeChild() untuk memadamkan elemen <book>

Padamkan nod elemen semasa
Contoh ini menggunakan parentNode dan removeChild() untuk memadamkan elemen <book>

Padamkan nod teks
Contoh ini menggunakan removeChild() untuk memadamkan nod teks bagi elemen <title>

Kosongkan teks nod teks
Contoh ini menggunakan atribut nodeValue() untuk mengosongkan nod teks bagi elemen <title>

Alih keluar atribut mengikut nama
Contoh ini menggunakan removeAttribute() untuk mengalih keluar atribut "category" daripada elemen <book>

Alih keluar atribut berdasarkan objek
Contoh ini menggunakan removeAttributeNode() untuk mengalih keluar semua atribut daripada semua <book>


Padamkan nod elemen

Kaedah removeChild() memadamkan nod yang ditentukan.

Apabila nod dipadamkan, semua nod anaknya juga dipadamkan.

Coretan kod berikut akan mengalih keluar elemen <book> pertama daripada xml yang dimuatkan:

Contoh

<!DOCTYPE html>
<html>
<head>
<script src="loadxmldoc.js"> 
</script>
</head>
<body>
<script>
xmlDoc=loadXMLDoc("books.xml");

document.write("Number of book nodes: ");
document.write(xmlDoc.getElementsByTagName('book').length);
document.write("<br>");

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

document.write("Number of book nodes after removeChild(): ");
document.write(xmlDoc.getElementsByTagName('book').length);

</script>
</body>
</html>

Jalankan Contoh»

Klik butang "Jalankan Contoh" untuk melihat contoh dalam talian

Penjelasan contoh:

  1. Gunakan loadXMLDoc( ) ke "books.xml" Muatkan xmlDoc

  2. Tetapkan pembolehubah y kepada nod elemen untuk dipadamkan

  3. Dengan menggunakan removeChild() kaedah daripada nod Induk memadamkan nod elemen


memadam sendiri - memadamkan nod semasa

Kaedah removeChild() ialah satu-satunya kaedah yang boleh memadamkan nod yang ditentukan .

Apabila anda telah menavigasi ke nod yang perlu dipadamkan, anda boleh memadamkan nod ini dengan menggunakan atribut parentNode dan kaedah removeChild():

Instance

<!DOCTYPE html>
<html>
<head>
<script src="loadxmldoc.js"> 
</script>
</head>
<body>
<script>
xmlDoc=loadXMLDoc("books.xml");

document.write("Number of book nodes before removeChild(): ");
document.write(xmlDoc.getElementsByTagName("book").length);
document.write("<br>");

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

document.write("Number of book nodes after removeChild(): ");
document.write(xmlDoc.getElementsByTagName("book").length);

</script>
</body>
</html>

Jalankan Instance»

Klik butang "Run Instance" untuk melihat contoh dalam talian

Penjelasan contoh:

  1. Gunakan loadXMLDoc() untuk memuatkan "books.xml" ke dalam xmlDoc

  2. Tetapkan pembolehubah y kepada yang dikehendaki Nod elemen dipadamkan

  3. Padamkan nod elemen ini dengan menggunakan atribut parentNode dan kaedah removeChild()


Padamkan nod teks

kaedah removeChild() boleh digunakan untuk memadamkan nod teks:

Instance

<!DOCTYPE html>
<html>
<head>
<script src="loadxmldoc.js"> 
</script>
</head>
<body>
<script>
xmlDoc=loadXMLDoc("books.xml");


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

document.write("Child nodes: ");
document.write(x.childNodes.length);
document.write("<br>");

y=x.childNodes[0];
x.removeChild(y);

document.write("Child nodes: ");
document.write(x.childNodes.length);
</script>
</body>
</html>

Jalankan instance »

Klik butang "Jalankan Contoh" untuk melihat contoh dalam talian

Penjelasan contoh:

  1. Gunakan loadXMLDoc() untuk memuatkan "books.xml" ke dalam xmlDoc

  2. Tetapkan pembolehubah x kepada nod elemen tajuk pertama

  3. Tetapkan pembolehubah y kepada nod teks yang akan dipadamkan

  4. Alih keluar nod elemen daripada nod induknya dengan menggunakan kaedah removeChild()

RemoveChild() yang kurang biasa digunakan mengalih keluar teks daripada nod. Atribut nodeValue boleh digunakan sebaliknya. Sila lihat perenggan seterusnya.


Kosongkan nod teks

atribut nodeValue boleh digunakan untuk menukar atau mengosongkan nilai nod teks:

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("Value: " + x.nodeValue);
document.write("<br>");

x.nodeValue="";

document.write("Value: " + x.nodeValue);
</script>
</body>
</html>

Jalankan contoh»

Klik butang "Jalankan contoh" untuk melihat contoh dalam talian

Penjelasan contoh:

  1. Gunakan loadXMLDoc () Muatkan "books.xml" ke dalam xmlDoc

  2. Tetapkan pembolehubah x kepada nod teks elemen tajuk pertama

  3. Gunakan atribut nodeValue untuk mengosongkan teks nod teks

Lelaran dan tukar nod teks semua <title> cuba


Padam berdasarkan nod Atribut nama

kaedah buangAttribute(nama) digunakan untuk memadamkan nod atribut berdasarkan nama.

Contoh: removeAttribute('category')

Coretan kod berikut mengalih keluar atribut "category" dalam elemen <book> pertama:

Contoh

<!DOCTYPE html>
<html>
<head>
<script src="loadxmldoc.js"> 
</script>
</head>
<body>

<script>
xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName('book');

document.write(x[0].getAttribute('category'));
document.write("<br>");

x[0].removeAttribute('category');

document.write(x[0].getAttribute('category'));

</script>
</body>
</html>

Jalankan Instance»

Klik butang "Run Instance" untuk melihat contoh dalam talian

Penjelasan contoh:

  1. Gunakan loadXMLDoc() untuk memuatkan "books.xml" ke dalam xmlDoc

  2. Gunakan getElementsByTagName() untuk mendapatkan nod buku

  3. Alih keluar atribut "kategori" daripada nod elemen buku pertama

Lintas dan padamkan " semua elemen <buku> category" attribute: Cuba kaedah


Padamkan nod atribut berdasarkan objek

moveAttributeNode(nod) mengalih keluar nod atribut dengan menggunakan objek nod sebagai parameter.

Contoh: removeAttributeNode(x)

Coretan kod berikut mengalih keluar semua atribut semua <buku>

Jalankan contoh»

Klik butang "Jalankan contoh" untuk melihat contoh dalam talian

Penjelasan contoh:

Gunakan loadXMLDoc() untuk memuatkan "books.xml" ke dalam xmlDoc

  1. Gunakan getElementsByTagName() untuk mendapatkan semua nod buku

  2. Semak setiap sama ada elemen buku mempunyai atribut

  3. Jika atribut wujud dalam elemen buku, padamkan atribut