0

我可以使用地理编码创建以科罗拉多州 Niwot 为中心的 Google 地图。如果我单击表单中的“编码”按钮(我从 Google 网站获得),它会在地图上的正确位置放置一个标记。

我的问题是:如何使用 javascript 回调函数检索位置坐标(纬度和经度)?我需要将经纬度放入我的数据库中。

另外,现在我只在一个地方使用它来进行故障排除,但是我需要它来处理许多地址。

代码如下。

var 地理编码器;变量映射;函数初始化(){

geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng(40.171776, -105.116737);
var myOptions = {
  zoom: 10,
  center: latlng,
  mapTypeId: google.maps.MapTypeId.ROADMAP
}
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

}

函数代码地址(){

var address = 'Niwot, CO';//这最终将是一个数组 geocoder.geocode( { 'address': address}, function(results) {

    var marker = new google.maps.Marker({
        map: map,
        position: results[0].geometry.location

    });

//下面的代码基于注释1添加;如何显示纬度和经度?我需要这样做以进行故障排除。

    var latlng = results[0].geometry.location; 
    var lat = latlng.lat(); 
    var lng = latlng.lng();

}); }

4

2 回答 2

2

返回的位置是 LatLng 类的一个实例。您可以调用 lat() 获取纬度,调用 lng() 获取经度。例如

var latlng = 结果[0].geometry.location; var lat = latlng.lat(); var lng = latlng.lng();

以下是相关文档:

http://code.google.com/apis/maps/documentation/javascript/reference.html#LatLng

于 2011-05-31T17:03:48.597 回答
0

您可以在地理编码调用中执行此操作

  geocoder.geocode( { 'address': 'CA, US'}, function(results, status) {
   if (status == google.maps.GeocoderStatus.OK) {
     location = results[0].geometry.location;
   alert(location)
    } 
  });

这将显示地址的纬度和经度。

(纬度,经度)

于 2011-06-23T06:17:08.993 回答