Google Places API - place_changed侦听器无法正常工作

时间:2012-06-30 04:04:10

标签: google-maps-api-3

我正在尝试使用Google Places API中的自动填充功能。我有自动完成功能本身设置和工作,但我想添加一个监听器,以便我可以使用其他地方的PlacesResult信息。

为了测试功能,我试图通过调出一个警告框来证明听众的工作,并将place.name写入。这两件事都没有用,所以我认为听众的配置显然是错误的,但我无法弄清楚我是怎么写错的。

<!-- Load Places Library for Google Maps-->
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?libraries=places&sensor=false">
</script>

<!-- Autocomplete Script -->
<script type="text/javascript">
function initialize(){
    var input = document.getElementById('name');
    var autocomplete = new google.maps.places.Autocomplete(input);
}
google.maps.event.addDomListener(window, 'load', initialize);

google.maps.event.addListener(autocomplete, 'place_changed', function(){
    var place = autocomplete.getPlace();
    alert("This function is working!");
    document.getElementById("receiver").innerHTML=place.name;
});
</script>

1 个答案:

答案 0 :(得分:4)

addListener 的电话移至 initialize

否则 addListener 将在 initialize 之前调用, autocomplete 将在此处未知时间和在这个范围内(它不是全球性的)