1.对XMLHttpRequest请求返回的responseXML进行解析,responseXML是个XMLDOcument对象 假设返回的responseXML为: <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <response> <method>checkName</method> <result>1</result> </response> 则获取method和result值方法为: var response=req.responseXML.documentElement; method =response.getElementsByTagName('method')[0].firstChild.data; result = response.getElementsByTagName('result')[0].firstChild.data; 2.创建一个XMLDocument对象 function getXMLDocument() { var xDoc = null; if (document.implementation && document.implementation.createDocument) { xDoc = document.implementation.createDocument("", "", null); } else { if ((typeof ActiveXObject) != "undefined") { var msXmlAx = null; try { msXmlAx = new ActiveXObject("Msxml2.DOMDocument"); } catch (e) { msXmlAx = new ActiveXObject("Msxml.DOMDocument"); } xDoc = msXmlAx; } } if (xDoc == null || typeof xDoc.load == "undefined") { xDoc = null; } return xDoc; } 3.创建一个DOM树 <people> <person first-name="eric" middle-initial="h" last-name="jung"> <address street="321 south st" city="denver" state="co" country="usa" /> </person> <person first-name="jed" last-name="brown"> <address street="321 north st" city="atlanta" state="ga" country="usa" /> <address street="321 south avenue" city="denver" state="co" country="usa" /> </person> </people> 程序如下: var doc=getXMLDocument(); var peopleElem = doc.createElement("people"); var personElem1 = doc.createElement("person"); personElem1.setAttribute("first-name", "eric"); personElem1.setAttribute("middle-initial", "h"); personElem1.setAttribute("last-name", "jung"); var addressElem1 = doc.createElement("address"); addressElem1.setAttribute("street", "321 south st"); addressElem1.setAttribute("city", "denver"); addressElem1.setAttribute("state", "co"); addressElem1.setAttribute("country", "usa"); personElem1.appendChild(addressElem1); var personElem2 = doc.createElement("person"); personElem2.setAttribute("first-name", "jed"); personElem2.setAttribute("last-name", "brown"); var addressElem3 = doc.createElement("address"); addressElem3.setAttribute("street", "321 north st"); addressElem3.setAttribute("city", "atlanta"); addressElem3.setAttribute("state", "ga"); addressElem3.setAttribute("country", "usa"); personElem2.appendChild(addressElem3); var addressElem5 = doc.createElement("address"); addressElem5.setAttribute("street", "321 south avenue"); addressElem5.setAttribute("city", "denver"); addressElem5.setAttribute("state", "co"); addressElem5.setAttribute("country", "usa"); personElem2.appendChild(addressElem5); peopleElem.appendChild(personElem1); peopleElem.appendChild(personElem2); doc.appendChild(peopleElem); alert(doc.xml);//xml属性只对IE管用 |
JS解析XML
最新推荐文章于 2016-11-14 16:10:00 发布