我正在尝试使用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>
答案 0 :(得分:4)
将 addListener
的电话移至 initialize
。
否则 addListener
将在 initialize
之前调用, autocomplete
将在此处未知时间和在这个范围内(它不是全球性的)