我要做的是从PHP / XML文件加载MapQuest地图上的坐标。 这是整个场景: 我的页面加载并显示地图,然后我想单击一个调用函数的按钮。在这个函数中,我使用AJAX从名为coor.xml的外部文件中获取坐标。在coor.xml中,我使用PHP从我的数据库中获取Coordinates(Lat和Lng)并生成XML文件。然后这些坐标显示在我的地图上而不重新加载页面。 我遇到的问题是它不起作用。 这是我的代码:
MQA.withModule('shapes', function() {
var line = new MQA.LineOverlay();
var lineCoordinates = "";
var x=xmlDoc.getElementsByTagName("coordinates");
for(var i = 0; i < x.length; i++)
{
var lng = x[i].getElementsByTagName("lng")[0].firstChild.nodeValue;
var lat = x[i].getElementsByTagName("lat")[0].firstChild.nodeValue
if((x.length - 1) == i)
{
lineCoordinates = lineCoordinates + lng + ', ' + lat;
}
else
{
lineCoordinates = lineCoordinates + lng + ', ' + lat + ', ';
}
}
line.setShapePoints([lineCoordinates]);
map.addShape(line);
这是它应该显示的内容:
line.setShapePoints([-27.955591, 25.111084, -27.974998, 26.759033, -29.113775, 26.253662]);
但是我收到以下错误:
- 意外值NaN,NaN解析点属性。
-Aq未定义
这是我的coor.xml文件示例:
<?xml version="1.0" encoding="utf-8"?>
<markers>
<coordinates>
<id>1</id>
<lat>-27.955591</lng>
<lng>25.111084</lat>
<text>Position 1</text>
</coordinates>
<coordinates>
<id>2</id>
<lat>-27.974998</lng>
<lng>26.759033</lat>
<text>Position 2</text>
</coordinates>
<coordinates>
<id>3</id>
<lat>-29.113775</lng>
<lng>26.253662</lat>
<text>Position 3</text>
</coordinates>
</markers>
希望我能正确解释: - )
答案 0 :(得分:0)
这些形状点对我很有用。有没有我们能看到这种情况的网址?