javascript - 没有办法删除谷歌地方自动完成?

标签 javascript google-maps google-places-api

var autocomplete = new google.maps.places.Autocomplete(input, {
  types:  ['geocode']
});

我现在如何删除它?

有“autocomplete.unbindAll()”函数,但它不会删除下拉框的 HTML。我有一个页面做很多 Ajaxy 的事情,因为这个下拉框不断被添加,即使在页面上的给定时间只有一个自动完成:|

最佳答案

假设事情是这样初始化的

var autocomplete = new google.maps.places.Autocomplete(input, {types: ['geocode']});
var autocompleteLsr = google.maps.event.addListener(autocomplete, 'place_changed', function() { ... });

谷歌地图 API 还提供 removeListener 和 clearInstanceListeners 以供删除。 https://developers.google.com/maps/documentation/javascript/reference#event

作为可选步骤,您也应该删除这个 $(".pac-container")

google.maps.event.removeListener(autocompleteLsr);
google.maps.event.clearInstanceListeners(autocomplete);
$(".pac-container").remove();

关于javascript - 没有办法删除谷歌地方自动完成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33049322/

相关文章:

android - 适用于 Android 的地方 API

android - places.getLatLng() 返回 null 虽然 places.getName() 没有返回 null

javascript - 向多个 Google 自动完成位置添加额外组件

javascript - 从 Bootstrap Typeahead 中的数据属性中调用函数?

javascript - 语法错误 : missing ] after element list [object Object]

javascript - Google Maps HTML5 点击获取经纬度

ios - NSThread gtm_performBlock 错误

javascript - 如何设置自定义对象属性以在 Angular typeahead 中进行过滤?

javascript - 页面背景不显示整个图像

android - 如何在android中显示两个位置之间的路线?