回答
我從你的last question猜測,在這個問題發生前20分鐘,你試圖解析(讀取和轉換)通過使用GeoNames的FindNearestAddress找到的XML。
如果你的XML是在一個名爲txt
一個字符串變量,看起來像這樣:
<address>
<street>Roble Ave</street>
<mtfcc>S1400</mtfcc>
<streetNumber>649</streetNumber>
<lat>37.45127</lat>
<lng>-122.18032</lng>
<distance>0.04</distance>
<postalcode>94025</postalcode>
<placename>Menlo Park</placename>
<adminCode2>081</adminCode2>
<adminName2>San Mateo</adminName2>
<adminCode1>CA</adminCode1>
<adminName1>California</adminName1>
<countryCode>US</countryCode>
</address>
然後你就可以用JavaScript DOM解析XML是這樣的:
if (window.DOMParser)
{
parser = new DOMParser();
xmlDoc = parser.parseFromString(txt, "text/xml");
}
else // Internet Explorer
{
xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async = false;
xmlDoc.loadXML(txt);
}
,並從特定的值像這樣的節點:
//Gets house address number
xmlDoc.getElementsByTagName("streetNumber")[0].childNodes[0].nodeValue;
//Gets Street name
xmlDoc.getElementsByTagName("street")[0].childNodes[0].nodeValue;
//Gets Postal Code
xmlDoc.getElementsByTagName("postalcode")[0].childNodes[0].nodeValue;
請注意,您可以使用jquery快速訪問值,如$(xmlDoc).find('street:eq(0):eq(0)')。html()'而不是'xmlDoc.getElementsByTagName(「streetNumber 「)[0] .childNodes [0] .nodeValue;' –
非常有幫助Enigmadan謝謝! – Andrew
查找和整合OP的其他問題的答案就是我所說的高級SO遊戲。我印象深刻,做得好! – maryisdead
以下將在所有主流瀏覽器(包括Internet Explorer 6)中將XML字符串解析爲XML文檔。一旦擁有了這些,就可以使用常用的DOM遍歷方法/屬性(如childNodes和getElementsByTagName())來獲取你想要的節點。
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");
}
用法示例:
var xml = parseXml("<foo>Stuff</foo>");
alert(xml.documentElement.nodeName);
- 1. 解析XML的使用Javascript
- 2. 使用jquery javascript解析xml
- 3. XML解析使用javascript
- 4. 用JavaScript解析XML?
- 5. 用Javascript解析XML
- 6. Javascript XML解析
- 7. 用Javascript解析xml文檔
- 8. Javascript XML解析器
- 9. Javascript和xml解析
- 10. 解析XML的JavaScript
- 11. JavaScript的XML解析
- 12. 從javascript解析XML
- 13. 使用Javascript解析XML數據
- 14. 如何使用JavaScript DOM解析此XML?
- 15. 使用XPath和Javascript解析XML
- 16. 如何使用javascript解析xml?
- 17. 使用JavaScript解析XML文件
- 18. 使用JavaScript解析XML字符串
- 19. 如何使用XML解析childrenNodes javascript
- 20. 使用Javascript的解析器XML數據
- 21. 使用javascript解析XML屬性值
- 22. 在html中使用JavaScript解析XML
- 23. 使用XML解析Python XML
- 24. 使用Simple XML解析XML
- 25. 使用xml解析
- 26. 使用android sax解析器解析XML
- 27. 使用sax解析器解析XML
- 28. 在javascript中解析XML而不使用瀏覽器特定的xml解析器?
- 29. 解析使用Javascript
- 30. 使用Javascript解析
我可能會使用PhoneGap來打包應用程序,我不知道這是否可行。 – user2574350