【问题标题】:Google Places API - place_changed listener not workingGoogle Places API - place_changed 监听器不起作用
【发布时间】:2012-06-30 04:04:10
【问题描述】:

我正在尝试使用 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>

【问题讨论】:

    标签: google-maps-api-3


    【解决方案1】:

    addListener 的呼叫移至 initialize

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

    【讨论】:

    • 啊!谢谢你。 (这里是完整的 JS 菜鸟。)非常感谢。
    猜你喜欢
    • 2016-07-07
    • 2023-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-06
    • 1970-01-01
    相关资源
    最近更新 更多