Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Menghuraikan Rentetan XML Dinamik dalam JavaScript Menggunakan Kaedah Serasi Penyemak Imbas Moden dan Legasi?

Bagaimanakah Saya Boleh Menghuraikan Rentetan XML Dinamik dalam JavaScript Menggunakan Kaedah Serasi Penyemak Imbas Moden dan Legasi?

DDD
Lepaskan: 2024-12-16 11:32:12
asal
958 orang telah melayarinya

How Can I Parse Dynamic XML Strings in JavaScript Using Modern and Legacy Browser Compatible Methods?

Penghuraian XML Rentetan Dinamik dalam JavaScript

Masalah: Bekerja dengan data XML selalunya melibatkan pengambilan semula sebagai rentetan daripada sumber dinamik. Bagaimanakah kita boleh menghuraikan dan memanipulasi data XML ini dengan berkesan menggunakan kod JavaScript yang serasi dengan penyemak imbas moden?

Penyelesaian:

Kaedah DOMParser

Untuk penyemak imbas menyokong antara muka DOMParser, fungsi berikut menyediakan penghuraian XML yang mudah mekanisme:

function parseXml(xmlStr) {
  return new window.DOMParser().parseFromString(xmlStr, "text/xml");
}
Salin selepas log masuk

Contoh penggunaan:

var xml = parseXml('<foo>Stuff</foo>');
console.log(xml.documentElement.nodeName); // Outputs: "foo"
Salin selepas log masuk

ActiveXObject (untuk Sokongan IE Legacy)

Dalam kes DOMParser tidak tersedia, seperti dalam versi Internet Explorer ke atas hingga 8, coretan kod berikut memberikan sandaran menggunakan ActiveXObject:

var parseXml;

if (typeof window.DOMParser != "undefined") {
  parseXml = function(xmlStr) {
    return new window.DOMParser().parseFromString(xmlStr, "text/xml");
  };
} else if (typeof window.ActiveXObject != "undefined" && new window.ActiveXObject("Microsoft.XMLDOM")) {
  parseXml = function(xmlStr) {
    var xmlDoc = new window.ActiveXObject("Microsoft.XMLDOM");
    xmlDoc.async = "false";
    xmlDoc.loadXML(xmlStr);
    return xmlDoc;
  };
} else {
  throw new Error("No XML parser found");
}
Salin selepas log masuk

Keserasian jQuery

jQuery versi 1.5 dan kemudian termasuk kaedah $.parseXML() yang mudah yang menawarkan fungsi yang serupa:

var xml = $.parseXML('<foo>Stuff</foo>');
console.log(xml.documentElement.nodeName); // Outputs: "foo"
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menghuraikan Rentetan XML Dinamik dalam JavaScript Menggunakan Kaedah Serasi Penyemak Imbas Moden dan Legasi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan