获取placeLchanged事件的LatLng

时间:2018-06-08 13:38:04

标签: javascript google-maps-api-3

我使用自动填充字段来搜索地址,我想在触发place_changed事件时检索与此地址关联的坐标,但显然我无法检索{{ 1}}事件的对象:



LatLng

function initMap() {
  var map = new google.maps.Map(document.getElementById('map'), {
    center: {lat: 0,lng: 0},
    zoom: 5
  });

  let input = document.getElementById('input');
  let autocomplete = new google.maps.places.Autocomplete(input,{types: ['geocode']});
  google.maps.event.addListener(autocomplete, 'place_changed', function(event) {
    map.panTo(event.latLng);
  });
}




  

TypeError:事件未定义

我知道这个字段主要用于自动完成,但它是否也允许地理编码?如果它没有,那么检索与已写入的地址相关联的<script async defer src="https://maps.googleapis.com/maps/api/js?key=MY_KEY&callback=initMap&libraries=places"></script> <div id="map" style="height: 100%;">Map here</div> <label for="input">Search address:</label> <input type="text" id="input">对象的最佳方法是什么?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您不需要该活动,您必须使用您检索到的地点的LatLng对象。你的听众会是这样的:

place.geometry.location