J'essaie d'écrire une application web pour mon projet de fin d'études à l'université, et l'un des premiers problèmes que je dois résoudre est d'obtenir une zone de texte auto-complète pour la saisie d'une adresse locale. J'ai passé un peu de temps à chercher sur internet et à jouer avec le plugin d'auto-complétion des lieux de google maps V3.
Il y a quelque chose que je ne comprends pas bien dans la documentation de l'api et j'espérais que quelqu'un pourrait m'éclairer, et peut-être m'indiquer la bonne direction.
dans la documentation, il est dit ceci :
la collection de types (régions) indique au service Place de renvoyer tout résultat correspondant aux types suivants :
locality
sublocality
postal_code
country
administrative_area1
administrative_area2
C'est ce que je ne comprends pas, j'habite en Cornouailles (bodmin pour être exact) et je veux que les résultats soient biaisés pour bodmin. j'ai fait ce qui suit :
var input = document.getElementById('inputOne');
var defaultBounds = new google.maps.LatLngBounds(
new google.maps.LatLng(50.423394,-4.803829),
new google.maps.LatLng(50.508623,-4.692593));
//need to set bounds to cornwall/bodmin
var options = {
bounds: defaultBounds,
types: ['geocode'],
componentRestrictions: {country: 'GB'}
};
var autocomplete = new google.maps.places.Autocomplete(input,options);
Cela fonctionne, mais si, par exemple, j'entre "st n", je m'attendais à ce que l'on trouve d'abord st nicolas street, qui se trouve à Bodmin, mais on trouve des choses comme st neot, qui se trouve à plusieurs kilomètres de là.
Une partie de moi pense qu'il faut que je mette le type à une valeur différente, mais je suis assez perplexe pour l'instant.
EDIT : L'exemple de ce que j'essaie de réaliser est sur la page maps.google.com si vous entrez ,Bodmin puis déplacez le curseur avant la virgule et commencez à taper un nom de rue ou même Asda cela restera local à ce qui se trouve dans cette zone. je préférerais ne pas avoir à taper ,bodmin mais c'est quelque chose que je peux contourner.
Si quelqu'un a une idée, ce serait génial. Ensuite, je devrai trouver un moyen pour que l'utilisateur puisse entrer des valeurs telles que "Asda"
et obtenir l'adresse locale d'Asda.