【发布时间】:2010-10-22 04:14:47
【问题描述】:
我是第一次玩 Google 地图。而且我正在努力提取有关标记所在位置的一些信息。
我已经设置了一个示例供您查看。当我拖动 A 节点时出现问题,getGeocode() 返回 undefined?
当我拖动节点时,我需要从节点中提取邮政编码、城市和地址。
请看http://dev.korebogen.dk/gmap/
提前致谢!
更新
我从响应中编辑了我的代码 - 现在我得到了两个地址(仍然需要剥离它,以便我获得单独变量中的信息)但由于某种原因,我的方向输出结果是“0”和“1” " (array) 我真的需要反向地理编码吗?
是否可以在地图上进行点击事件以添加A和B标记(如果加载时没有方向?)http://dev.korebogen.dk/gmap/已更新!
来自:
var param = i + "@" + newMarkers[i].getLatLng().y + "," + newMarkers[i].getLatLng().x;
这是更新的部分:
GEvent.addListener(newMarkers[i], "dragend", function() {
var points = [];
for (var i = 0; i < newMarkers.length; i++) {
var param = i + "@" + newMarkers[i].getLatLng().y + "," + newMarkers[i].getLatLng().x;
//points[i] = newMarkers[i].getLatLng();
points.push(param);
if (!i) {
var x = new GClientGeocoder();
x.getLocations(newMarkers[0].getLatLng(), function(addresses) {
if (addresses.Status.code == 200) {
var address = addresses.Placemark[0].address;
document.getElementById("start").innerHTML = address;
}
});
x.getLocations(newMarkers[1].getLatLng(), function(addresses) {
if (addresses.Status.code == 200) {
var address = addresses.Placemark[0].address;
document.getElementById("end").innerHTML = address;
}
});
}
}
gdir.loadFromWaypoints(points);
});
【问题讨论】:
-
由于您传递给 loadFromWaypoints (name@latitude,longitude) 的字符串数组的格式,您将获得方向名称的 0 和 1。该名称正在获取数组的索引。您可以返回注释掉的行,它会起作用。
标签: javascript google-maps maps geocoding