JavaScript 中變數字串的 XML 解析
從變數字串解析 XML 在 JavaScript 中是一個挑戰。本文將解決此需求並提供與瀏覽器相容的解決方案。
解決方案
在現代瀏覽器中,建議的方法是使用 DOMParser() 介面。以下程式碼段有效解析XML 字串:
function parseXml(xmlStr) { return new window.DOMParser().parseFromString(xmlStr, "text/xml"); }
但是,對於可能不支援DOMParser 的瀏覽器(例如IE 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"); }
取得XML 文件後,您可以使用標準DOM 方法進行導航,例如如childNodes 和getElementsByTagName().
jQuery 解決方案
jQuery1.5 版本開始,提供了一個方便的版本開始,提供了一個方便的版本。 parseXML()方法與上面的程式碼有相同的目的片段:
var xml = $.parseXML("<foo>Stuff</foo>"); alert(xml.documentElement.nodeName);
以上是如何在不同瀏覽器中解析 JavaScript 中變數的 XML 字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!