Advertisement
rAthus

[Maps Place Autocomplete] récupérer toutes les infos

May 14th, 2018 (edited)
351
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. autocompleteOptions = {
  2.     types: ['address'] // 'address' oblige des adresses précises, '(cities)' des villes, etc, voir ici: https://developers.google.com/places/supported_types
  3.     // pour autoriser uniquement des villes et des CP, utiliser ['locality','postal_code','administrative_area_level_3']
  4. };
  5. monAutocomplete = new google.maps.places.Autocomplete(document.getElementById('mon-autocomplete'),autocompleteOptions);
  6. monAutocomplete.addListener('place_changed',function() {
  7.     var place = monAutocomplete.getPlace();
  8.     if (!place.geometry) {
  9.         alert("Erreur ! Sélectionnez une adresse.");
  10.     }
  11.     else {
  12.         var lat = place.geometry.location.lat();
  13.         var lng = place.geometry.location.lng();
  14.         var etablissement = '';
  15.         var numero = '';
  16.         var rue = '';
  17.         var cp = '';
  18.         var ville = place.vicinity;
  19.         var departement = '';
  20.         var departement_code = '';
  21.         var region = '';
  22.         var region_code = '';
  23.         var pays = '';
  24.         var pays_code = '';
  25.         $.each(place.address_components,function(key,address_component) {
  26.             $.each(address_component.types,function(key,type) {
  27.                 if (type=='street_number') {
  28.                     numero = address_component.long_name;
  29.                 }
  30.                 else if (type=='route') {
  31.                     rue = address_component.long_name;
  32.                 }
  33.                 else if (type=='locality') {
  34.                     ville = address_component.long_name;
  35.                 }
  36.                 else if (type=='postal_code') {
  37.                     cp = address_component.long_name;
  38.                 }
  39.                 else if (type=='administrative_area_level_2') {
  40.                     departement = address_component.long_name;
  41.                     departement_code = address_component.short_name;
  42.                 }
  43.                 else if (type=='administrative_area_level_1') {
  44.                     region = address_component.long_name;
  45.                     region_code = address_component.short_name;
  46.                 }
  47.                 else if (type=='country') {
  48.                     pays = address_component.long_name;
  49.                     pays_code = address_component.short_name;
  50.                 }
  51.             });
  52.         });
  53.         if (departement_code && departement_code==departement && cp)
  54.             departement_code = (''+cp).substr(0,2);
  55.         if (place.types) {
  56.             $.each(place.types,function(i,type) {
  57.                 if (type=='establishment')
  58.                     etablissement = place.name;
  59.             });
  60.         }
  61.         // ICI FAIRE CE QU'ON VEUT DES DONNÉES
  62.     }
  63. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement