Latest web development tutorials

XML DOM node akses

Dengan DOM, Anda dapat mengakses setiap node dalam dokumen XML.


contoh

Coba - Contoh

Contoh berikut menggunakan file XML yang Books.xml .
Fungsi loadXMLDoc () , dalam JavaScript eksternal digunakan untuk memuat file XML.

Gunakan jumlah daftar node indeks untuk mengakses simpul
Contoh ini menggunakan metode Buka menu () untuk mendapatkan "books.xml" yang ketiga <title> elemen.

Menggunakan properti panjang untuk loop melalui node
Contoh ini menggunakan properti panjang untuk loop melalui "books.xml" semua <title> elemen.

Lihat tipe node elemen
Contoh ini menggunakan properti NodeType untuk mendapatkan "books.xml" tipe node dari elemen root.

Melintasi node elemen
Contoh ini menggunakan properti NodeType untuk menangani "books.xml" node elemen.

Hubungan menggunakan node untuk melintasi node elemen
Contoh ini menggunakan properti NodeType dan properti nextSibling untuk menangani "books.xml" node elemen.


akses Node

Anda dapat mengakses node dalam tiga cara:

1. Dengan menggunakan metode Buka menu ().

2. Cycle (melintasi) pohon simpul.

3. Dengan menggunakan hubungan simpul di pohon navigasi simpul.


Buka menu () metode

Buka menu () mengembalikan semua elemen memiliki nama tag yang ditentukan.

tatabahasa

node.getElementsByTagName("tagname");

contoh

Contoh berikut mengembalikan semua <title> elemen di bawah elemen x:

x.getElementsByTagName("title");

Harap dicatat bahwa contoh di atas mengembalikan hanya <title> elemen x simpul. Untuk mengembalikan dokumen XML semua <title> elemen, gunakan:

xmlDoc.getElementsByTagName("title");

Di sini, xmlDoc adalah dokumen itu sendiri (dokumen node).


DOM daftar node (Node Daftar)

Buka menu () metode mengembalikan daftar node. daftar node adalah array dari node.

Kode berikut menggunakan loadXMLDoc () untuk " yang Books.xml " ke xmlDoc, maka daftar tersimpan <title> node dalam variabel x:

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName("title");

Akses oleh nomor indeks x dalam <title> elemen. Untuk mengakses ketiga <title>, Anda dapat menulis:

y=x[2];

CATATAN: Indeks dimulai dari 0.

Dalam bab selanjutnya dari tutorial ini, Anda akan belajar lebih banyak tentang daftar node (Daftar Node) pengetahuan.


DOM daftar node panjang (Node Daftar Panjang)

Properti panjang panjang mendefinisikan daftar node (yaitu, jumlah node).

Anda dapat menggunakan properti panjang untuk loop melalui daftar node:

contoh

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName("title");

for (i=0;i<x.length;i++)
{
document.write(x[i].childNodes[0].nodeValue);
document.write("
");
}

Coba »

Contoh menjelaskan:

  1. Gunakan loadXMLDoc () untuk " yang Books.xml " ke xmlDoc
  2. Dapatkan semua <title> elemen node
  3. Setiap nilai output <title> elemen node teks

Node Type (Jenis Node)

DocumentElement atribut dari sebuah dokumen XML adalah simpul akar.

Nodename atribut simpul adalah nama dari node.

NodeType simpul atribut adalah jenis node.

Anda akan belajar lebih banyak tentang sifat-sifat node dalam bab selanjutnya dari tutorial ini.

mencoba


Melintasi node

Berikut iterates kode melalui akar node anak, tetapi juga elemen node:

contoh

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.documentElement.childNodes;

for (i=0;i<x.length;i++)
{
if (x[i].nodeType==1)
{//Process only element nodes (type 1)
document.write(x[i].nodeName);
document.write("
");
}
}

Coba »

Contoh menjelaskan:

  1. Gunakan loadXMLDoc () untuk " yang Books.xml " ke xmlDoc
  2. Mendapatkan node anak dari elemen root
  3. Jenis Node memeriksa setiap node anak. Jika jenis node "1", simpul merupakan elemen
  4. Jika node merupakan elemen, nama node output

simpul navigasi hubungan

Kode berikut menggunakan hubungan navigasi simpul simpul pohon:

contoh

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName("book")[0].childNodes;
y=xmlDoc.getElementsByTagName("book")[0].firstChild;

for (i=0;i<x.length;i++)
{
if (y.nodeType==1)
{//Process only element nodes (type 1)
document.write(y.nodeName + "
");
}
y=y.nextSibling;
}

Coba »
  1. Gunakan loadXMLDoc () untuk " yang Books.xml " ke xmlDoc
  2. Dapatkan node anak pertama dari elemen buku
  3. The "y" variabel diatur ke elemen pertama dari anak pertama buku
  4. Untuk setiap node anak (dari node anak pertama "y" mulai), jenis node cek, jika jenis node "1", simpul merupakan elemen
  5. Jika node merupakan elemen, nama node output
  6. The "y" variabel diatur ke saudara node berikutnya, dan menjalankan siklus lagi