谷歌地图中的自动填充会抛出错误TypeError:undefined不是函数(评估'a [zG](“占位符”)')

时间:2015-04-26 09:03:03

标签: javascript google-maps google-maps-api-3 autocomplete google-places-api

我正在努力解决这个问题。

我正在创建一个简单的搜索地图功能,但是自动完成会引发我不那么描述性的错误:TypeError:undefined不是一个函数(评估'azG')

我正在modal.s.shown事件中的bootstrap模式中初始化我的地图。

这是Javascript:

$('#map-modal').on('shown.bs.modal', function (e) {
    //picking up data attributes from the image that initialised the modal
    var image = $(e.relatedTarget);
    map_lat = $(image).data('lat');
    map_lng = $(image).data('lng');

    //passing the data to a initialise map function
    initialiseModalMap(map_lat,map_lng);

    //add autocomplete
    var input = $('#start-point');
    var options = {
        types: ['geocode']
    };
    var autocomplete = new google.maps.places.Autocomplete(input, options);
    autocomplete.bindTo('bounds', map);
    google.maps.event.addListener(autocomplete, 'place_changed', function() {
       console.log('changed');
    });
});

但是一旦show.bs.modal被触发,我在控制台中出现以下错误:

TypeError: undefined is not a function (evaluating 'a[zG]("placeholder")')

自动完成永远不会执行,在自动完成代码块之前,一切都很好。

我错过了什么?

如果您需要更多信息,请询问。

提前致谢!

1 个答案:

答案 0 :(得分:3)

当我切换到vanilla javascript以获取输入元素时,不会抛出错误

所以改为

var input = $('#start-point');

我把

var input = document.getElementById('start-point');

但是自动完成的下拉列表没有呈现,但我想这是一个完全不同的问题