Versuchen das Hinzufügen einer bounds
Eigenschaft zum options
Objekt, das Sie an den Autocomplete
Konstruktor werden, wie in diesem Code gezeigt:
var southWest = new google.maps.LatLng(25.341233, 68.289986);
var northEast = new google.maps.LatLng(25.450715, 68.428345);
var hyderabadBounds = new google.maps.LatLngBounds(southWest, northEast);
var options = {
bounds: hyderabadBounds,
types: ['establishment [or whatever fits your usage]'],
componentRestrictions: { country: 'pk' }
};
Wenn Sie die Autocomplete
Grenzen wollen durch das aktuelle Ansichtsfenster angesteuert werden von der Karte können Sie die Grenzen der Karte, um die Autocomplete
auf diese Weise binden:
autocomplete.bindTo('bounds', map);
Oder, wenn es besser in der Anwendung funktioniert, können Sie auch die Möglichkeit haben, die Grenzen explizit festlegen, wann immer notwendig:
autocomplete.setBounds(someOtherBounds);
Dies, dass Sie eine Standard-Stadt schaffen kann bedeuten, wie ich oben mit Hyberabad im Beispiel tat . Oder Sie erlauben Ihren Benutzern, aus einer Liste von zu startenden Städten auszuwählen und dann das Karten-Ansichtsfenster auf die ausgewählte Stadt zu setzen. Die Autocomplete
wird Städtenamen vorschlagen, wenn Sie mit nur der componentRestrictions
von country 'PK'
starten, wie Sie bereits tun. Sie werden wissen, was am besten für Ihre Anwendung funktioniert.
Schließlich beschränkt dies nicht wirklich und vollständig die Autocomplete
auf nur die Stadt, aber es wird das gewünschte Ergebnis so genau wie derzeit möglich erreichen.
http://hittheroad.ie/ erlaubt die automatische Vervollständigung nur in Irland und keine anderen Vorschläge. wie ist das möglich? – ihimv
Sorry für diese dumme Frage, aber wie finde ich die Grenzen für eine bestimmte Stadt in einem Land? –
@SiddharthAjmera: Es ist nicht albern, aber Sie werden bessere Ergebnisse erzielen, wenn Sie: eine neue Frage öffnen, mehr Details über genau das, was Sie erreichen möchten, ein Beispiel Ihres aktuellen Codes und erklären, warum dieser Code nicht funktioniert . –