Rumah >hujung hadapan web >tutorial js >Baca dan paparkan XML sisi pelayan dengan artikel JavaScript - Bahagian 1
XML memainkan peranan penting dalam perkhidmatan web, dan boleh memainkan peranan yang kuat dalam kombinasi dengan pelbagai bahasa pelanggan dan pelayan. Artikel ini akan meneroka cara menggunakan JavaScript XML dan pelanggan untuk memaparkan kandungan fail XML, mengakses elemen kanak -kanak, mengendalikan elemen, dll.
Dalam bahasa klien, keserasian pelayar adalah isu utama. Untuk gabungan XML dan JavaScript, masalahnya adalah terutamanya XML: tidak semua penyemak imbas menyokong dokumen XML parsing.
Contoh kod berikut adalah berdasarkan IE6. Pelayar yang tidak menyokong XML tidak dapat membaca kod ini, jadi apabila melihat fail XML dalam pelayar ini, penyemak imbas mengabaikan semua tag.
Berikut adalah fail XML sampel yang menunjukkan data pekerja syarikat dan perolehan:
<?xml version="1.0" ?> <company> <employee age="19" sex="M">Premshree Pillai</employee> <employee age="24" sex="M">Kumar Singh</employee> <employee age="21" sex="M">Ranjit Kapoor</employee> <turnover> <year>100,000</year> <year>140,000</year> <year>200,000</year> </turnover> </company>
LOAD FILE XML
anda boleh memuatkan fail XML melalui kod JavaScript berikut:
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); function loadXML(xmlFile) { xmlDoc.async = "false"; xmlDoc.onreadystatechange = verify; xmlDoc.load(xmlFile); xmlObj = xmlDoc.documentElement; }
Malah, dua baris terakhir fungsi sudah cukup untuk memuatkan fail XML. Dua baris pertama memastikan bahawa mana -mana fungsi JavaScript yang kami gunakan untuk memanipulasi data fail XML selepas itu tidak akan melakukan sebarang operasi pada objek yang tidak dikenali. Oleh itu, Call Verify () Fungsi:
function verify() { // 0 对象未初始化 // 1 对象正在加载数据 // 2 对象已加载数据 // 3 可以处理对象中的数据 // 4 对象完全初始化 if (xmlDoc.readyState != 4) { return false; } }
Fail XML kini boleh dimuatkan:
loadXML('xml_file.xml');
Tunjukkan kandungan fail XML
Gunakan alert(xmlObj.xml);
untuk melihat keseluruhan kandungan fail XML. Keseluruhan fail XML akan dipaparkan seperti dalam kotak amaran dengan lekukan yang sesuai.
unsur -unsur sube dan nod
dalam fail XML di atas, <company></company>
adalah tag peringkat atas, dan semua tag lain berada di bawahnya. Tag ini dipanggil elemen kanak -kanak. Fail XML ini boleh diwakili secara grafik dalam bentuk pokok folder:
mempunyai 4 elemen kanak-kanak. <company></company>
. <turnover></turnover>
kita boleh menggunakan atribut
(4 di sini) boleh didapati melalui childNodes.length
. <company></company>
xmlObj.childNodes.length
Bilangan elemen kanak -kanak dari tag
. <turnover></turnover>
xmlObj.childNodes(3).childNodes.length
Kami menggunakan
adalah elemen anak ketiga childNodes(3)
. <turnover></turnover>
<company></company>
ujian elemen kanak -kanak
Anda boleh menggunakan untuk menguji sama ada elemen kanak -kanak nod tertentu mempunyai elemen kanak -kanak.
Oleh itu, childNodes(i).hasChildNodes
akan kembali benar.
tidak mempunyai elemen kanak -kanak. xmlObj.childNodes(3).hasChildNodes()
xmlObj.childNodes(2).hasChildNodes()
Dapatkan nama tag
anda boleh menggunakan childNodes(i).tagName
untuk mendapatkan nama label elemen kanak -kanak. Oleh itu, xmlObj.tagName
akan kembali "Syarikat". xmlObj.childNodes(0).tagName
akan mengembalikan "pekerja". xmlObj.childNodes(3).childNodes(0).tagName
akan kembali "tahun".
Tunjukkan kandungan tag
Dalam fail XML, kandungan tag <employee></employee>
pertama ialah "Premshree Pillai". Anda boleh mendapatkan nilai ini menggunakan xmlObj.childNodes(0).firstChild.text
.
<?xml version="1.0" ?> <company> <employee age="19" sex="M">Premshree Pillai</employee> <employee age="24" sex="M">Kumar Singh</employee> <employee age="21" sex="M">Ranjit Kapoor</employee> <turnover> <year>100,000</year> <year>140,000</year> <year>200,000</year> </turnover> </company>
Properties
Dalam fail XML, tag <employee></employee>
mempunyai 3 sifat. Ciri -ciri boleh diakses menggunakan childNodes(i).getAttribute("AttributeName")
. Oleh itu, xmlObj.childNodes(0).getAttribute("id")
akan kembali "001". xmlObj.childNodes(1).getAttribute("age")
akan kembali "24". xmlObj.childNodes(2).getAttribute("sex")
akan kembali "F".
... (Kandungan berikutnya, termasuk bahagian FAQ, boleh ditulis semula dengan cara yang sama, mengekalkan makna asal, dan menyesuaikan struktur kata -kata dan kalimat.)
Atas ialah kandungan terperinci Baca dan paparkan XML sisi pelayan dengan artikel JavaScript - Bahagian 1. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!