Wie das Problem zu reproduzieren:Auslöser Google Maps zum automatischen Vervollständigung auf Fokus heraus
auf dieser Seite https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete-addressform
eine Adresse wählen, zum Beispiel 20 Water Street, New York City, NY, United States
, (wie die Felder erwartet werden mit den Informationen gefüllt). Jetzt, z.B. Ändern Sie in der Adresse zwischen 20 und 10, und klicken Sie statt auf die Adresse aus der vorgeschlagenen Liste einfach irgendwo auf die Seite. Die vorgeschlagene Liste verschwindet, die neue Adresse 10 Water Street, New York City, NY, United States
verbleibt im Eingabefeld, aber die Felderinformation wird nicht aktualisiert.
Ich verwende dies, um die Breite und Länge zu erhalten. Also, wenn der Benutzer, anstatt auf die Adresse zu klicken, außerhalb klickt, sieht es so aus, als ob er die Adresse geändert hat, aber tatsächlich habe ich immer noch die vorherige Adresse Lat und Lng.
hier ist die init-Funktion
var autocomplete;
function initialize() {
autocomplete = new google.maps.places.Autocomplete(
/** @type {HTMLInputElement} */
(document.getElementById('addressAutocomplete')), {
types : [ 'geocode' ]
});
google.maps.event.addListener(autocomplete, 'place_changed', function() {
var place = autocomplete.getPlace();
console.log(place);
});
}
ich smth wie das funktionieren kann dachte, aber es funktioniert nicht, diese Zeile console.log(place);
undefined Ausgänge
$(document).ready(function() {
$(document).on('focusout', '#addressAutocomplete', function() {
google.maps.event.trigger(autocomplete, 'place_changed', {});
});
});
Dank
Sie möchten also den ersten Vorschlag automatisch auswählen, wenn das Eingabefeld den Fokus verliert? –
@ Dr.Molle So weit ich es versucht habe, sieht es ja aus, aber ich bin mir nicht sicher, ob das in allen Fällen funktionieren wird. Danke – dav
bekommen Antwort von 'var place = autocomplete.getPlace();' überprüfen Sie dieses http://jsfiddle.net/BBzk6/ .. – Rorschach