是否可以控制(启用/禁用)Google商家信息自动填充SearchBox(google.maps.places.SearchBox)服务预测?
或者换句话说:是否可以暂时从自动完成SearchBox服务中分离HTML输入元素,然后重新附加它?
问题是我显示的服务结果只是附加到SearchBox服务的HTML输入元素.问题是,在显示结果并且用户重新关注输入元素之后,预测将显示在结果上并模糊其视图.我想禁用预测,直到用户更改input元素中的文本.
编辑26 / Aug / 2016:
Javascript API目前不支持禁用预测.因此,我刚刚在Google上发布了一项功能请求.如果您对该功能感兴趣,请投票支持:Autocomplete SearchBox – Control (enable/disable) predictions..
编辑07 / Sep / 2016 – 赏金奖励更新:
感谢所有参与回答和推广问题的人.
该奖项的主要目标是使用现有的手段找到解决方案.我担心这不会发生,所以我决定不给予赏金.
虽然没有一个答案提供解决方案,但每个都提供了某种形式,所以谢谢!也许这些线索将来会指向一个解决方案.
奖励的次要目标(虽然没有直接传达)是为了宣传Autocomplete SearchBox – Control (enable/disable) predictions功能请求.其状态更改为NeatIdea,并已分配内部跟踪号码.这是一个好兆头.
解决方法
您可以做的是,在用户选择该位置后,您可以向该输入字段添加禁用的类..,这将帮助您根据类名启用/禁用预测.
let field = document.getElementById('location'); if ( field.className.indexOf('disabled') > -1 ) { google.maps.event.clearInstanceListeners(field); } else { let autocomplete = new google.maps.places.Autocomplete( field,{types: ['geocode']} ); autocomplete.addListener('place_changed',() => { let place = autocomplete.getPlace(); let filed_val = field.value; // incase you need it field.classList.add('disabled'); }); }