从Google商家信息自动填充API获取纬度和经度

时间:2017-05-05 15:02:05

标签: google-maps google-places-api google-places

我正在使用Google商家信息自动填充API,以获得用户输入城市的输入,并获取他们要搜索的地点的建议。

我需要不仅这个地方的名称,而是 Latitude和Longitud 的地方,然后将谷歌地图居中。

问题是,Google商家信息自动填充API只返回该地点的描述,但不是坐标,至少与我尝试过的一样。

有人知道是否有办法获得Latitud& 相同请求中的长度?

许多感谢提供任何帮助:')

1 个答案:

答案 0 :(得分:1)

您要查找的所有信息都可以在Place Result中找到。这就是您的代码的样子:

var input        = document.getElementById("address");
var autocomplete = new google.maps.places.Autocomplete(input, {types: ["geocode"]});

autocomplete.addListener("place_changed", function() {
    var placeResult = autocomplete.getPlace();
    var name        = placeResult.name;

    // The selected place's position
    var location    = placeResult.geometry.location;

    // The preferred viewport when displaying this Place on a map. 
    // This property will be null if the preferred viewport for the Place is not known.
    var viewport    = placeResult.geometry.viewport;

    // This is assuming your google map is saved in a variable called myMap
    if (viewport) {
       myMap.fitBounds(viewport)
    }
    else if (location) {
       myMap.setCenter(location)
    }
});

我最近创建了一个jQuery plugin,可以轻松地与Google地图自动填充功能进行交互。这是每次选择地点时将地图居中的代码:

$("#address").geocomplete({
    map: myMap
});

该插件还允许您自动填充地址表单,添加自定义样式,提供回调并修复烦人的scrolling issue