Google Maps API - 第二次点击时place_changed侦听器触发

时间:2017-01-20 02:57:51

标签: javascript jquery google-maps-api-3

JS

var location_input = document.getElementById('location');
var autocomplete = new google.maps.places.Autocomplete(location_input);

google.maps.event.addListener(autocomplete, 'place_changed', function(){
  alert('here');
  console.log('here');
});

HTML

{{Form::input('text', 'location', null, ['id' => 'location', 'class' => 'form-control']) }}

@section('after-scripts')
    {!! Html::script('PATH_TO_SCRIPT.js') !!}
@endsection

如果我向下箭头按下结果并按回车键,则会触发该事件。如果我单击列表中的项目,单击返回到输入框,然后再次单击相同的项目,它也可以。

我遇到的问题是,事件应该在第一次点击正在被选中的项目而不是第二次点击时触发。

1 个答案:

答案 0 :(得分:0)

这对我来说是一个愚蠢的错误。我在与我使用问题中提到的代码的位置不同的位置使用同一文本字段上的自动填充方法。删除第二次自动完成后,一切都按预期开始工作。

一个小小的睡眠可以做到这一点很神奇。