web-dev-qa-db-fra.com

google.maps.places et sa méthode de saisie semi-automatique ne sont pas définis

Je charge le API Google Maps , jQuery et ce Geocomplete plugin. Veuillez noter que je spécifie également les bibliothèques ( bibliothèques = places ) et éventuellement ma clé API :

<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js'></script>
<script src='http://maps.googleapis.com/maps/api/js?v=3&sensor=false&amp;libraries=places&key=xxx'></script>
<script src='js/vendor/jquery.geocomplete.js'></script>

Je déclenche le plugin Geocomplete au chargement de la page

$(window).load(function () {
    $('#my-input').geocomplete();
});

mais j'ai toujours une erreur:

TypeError non capturé: Impossible de lire la propriété 'Autocomplete' de non défini [jquery.geocomplete.js: 153] .

À l'intérieur du plugin ...

this.autocomplete = new google.maps.places.Autocomplete(
 this.input, options
);

J'ai essayé de google.maps et il retourne un objet régulier, mais les lieux sont indéfinis !

22
Luke

J'ai essayé de google.maps et il renvoie un objet régulier, mais les lieux ne sont pas définis!

Cela signifie que la bibliothèque google.maps.places ne se charge pas (la ligne de code que vous avez publiée, illustrée ci-dessous n'est pas correcte ou n'est pas réellement sur votre page):

<script src='http://maps.googleapis.com/maps/api/js?v=3&sensor=false&amp;libraries=places&key=xxx'></script>

Voici l'exemple de la documentation:

<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?libraries=places&sensor=false"></script>

La seule différence évidente est le &amp; dans le vôtre, cela devrait fonctionner, mais vous devriez probablement l'utiliser régulièrement.

TL; DR

Utilisation &libraries ne pas &amp;libraries et cela fonctionnera.

69
geocodezip