感謝您閱讀我的問題。我使用Google Map API來解析XML。 XML數據是由MFC生成的,然後我將它發送到HTML,然後我將它發送到HTML,然後我使用JavaScript來解析此XML字符串並做一些工作,但是當我單擊將解析XML字符串的按鈕時,出現錯誤發生「無法從的getElementsByTagName得到的數據:它是null或undefined使用getElementsByTagName無法獲取數據
但JS代碼是example code of Google Map API,所以我不知道如何解決這個問題,請大家幫我
Additinal信息:!我使用MFC中的WebBrowser來加載一個HTML頁面,所有的代碼都在這裏。GXml是一個Google Map API的命名空間,它有這個方法。我想如果MFC WebBrowser不支持getElementsByTagName()方法?那麼,如何解決它?
function loadXMLData()
{
var strXML = document.getElementById('XMLfromMFC');
var xmlDoc = GXml.parse(strXML);
var polylines = xmlDoc.documentElement.getElementsByTagName("road");
for (var i = 0; i < polylines.length; i++) {
addPolylines(polylines[i]);
}
}
function addPolylines(node)
{
var points = node.getElementsByTagName("point");
var pts = [];
for (var i = 0; i < points.length; i++)
{
pts[i] = new GLatLng(parseFloat(points[i].getAttribute("lat")),parseFloat(points[i].getAttribute("lon")));
}
for (var i = 0; i < points.length; i++) {
pts[i] = new GLatLng(parseFloat(points[i].getAttribute("lat")), parseFloat(points[i].getAttribute("lon")));
}
var polyline = new GPolyline(pts);
map.addOverlay(polyline);
return polyline;
}
的XML數據如下圖所示:
<?xml version="1.0" encoding="utf-8"?>
<AllRoadsData>
<road>
<id>1</id>
<roadName>first</roadName>
<roadWidth>2</roadWidth>
<pointsNum>9</pointsNum>
<maxSpeed>80</maxSpeed>
<point lon="42.361081" lat="-71.070213"/>
<point lon="42.361128" lat="-71.068625"/>
<point lon="42.361192" lat="-71.066844"/>
</road>
<road>
<id>2</id>
<roadName>second</roadName>
<roadWidth>4</roadWidth>
<pointsNum>5</pointsNum>
<maxSpeed>30</maxSpeed>
<point lon="42.357291" lat="-71.065063"/>
<point lon="42.358290" lat="-71.065085"/>
</road>
</AllRoadsData>
有人幫我!!!!!!!!!請 – Rayborn1105