2012-04-16 3 views
4

Je commence actuellement à utiliser l'API Google Maps v3 et je veux savoir s'il est possible d'utiliser la fonction de saisie semi-automatique pour renseigner automatiquement le nom de l'adresse de rue?Google Maps autocomplete mais seulement pour les noms d'adresse de rue

Je suis actuellement en utilisant ce code:

$(document).ready(function(){ 
    var options = { 
     types: ['(cities)'], 
     componentRestrictions: {country: "ar" } 
    }; 

var input = document.getElementById('laboral_calle'); 

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

}); 

Mais ne fonctionne pas actuellement.

Je dois définir un état fixe et une ville fixe pour afficher uniquement les suggestions de noms de rues dans le champ de texte.

Est-ce possible?

Répondre

1

Je ne suis pas sûr de bien comprendre votre exigence - dites-vous que vous ne voulez faire correspondre que les adresses de rues dans une ville/un état en particulier?

Si tel est le cas, vous pouvez définir un LatLngBounds dans vos options de saisie semi-automatique pour biaiser tous les résultats dans la zone entourée par vos limites. Il ne filtrera pas complètement quoi que ce soit en dehors de cela, mais pour une recherche donnée, s'il y a quelque chose à l'intérieur de vos limites qui le correspond, cela apparaîtra au-dessus de toute autre chose. Notez que si vous définissez le type sur '(villes)', cela ne fera que correspondre aux 'villes', et vous ne verrez aucune adresse de rue!

Ici, je définis un LatLngBounds qui englobe London et ensuite restreindre la saisie semi-automatique pour ne faire correspondre que les adresses de rue.

var londonBounds = new google.maps.LatLngBounds(new google.maps.LatLng(51.332757,-0.475159),new google.maps.LatLng(51.680219,0.191574)); 

var autocompleteOptions = { 
    bounds: londonBounds, 
    types:['geocode'], 
}; 
Questions connexes