-1

Ich verwende Google Maps API, Google Places API und Autocomplete und habe einen Kartenservice, an den der Kunde 2 Standorte setzen und den Abstand zwischen ihnen und ein Fahrpreis mit der Karte.Google Maps API zeigt für einige Standorte einen inkorrekten Standort an, stimmt aber für andere Standorte.

Im Allgemeinen hat dies funktioniert gut und Berechnen der richtigen Standorte, aber ich habe festgestellt, für einige Standorte Autocomplete zeigt die Adresse in der Textbox, aber wenn es geocodiert und der Karte hinzugefügt wird, bringt es die falsche Position (von nur das, was ich nur annehmen kann, ist der Zellenturmort, wie es scheint, um zu dieser Adresse für andere Adressen zu gehen, die nicht arbeiten).

Der Standort, der nicht funktioniert, befindet sich an einem entfernteren Standort mit einer weit reichenden Postleitzahl - könnte Google dies deshalb nicht korrekt auf der Karte anzeigen? Deshalb muss ich einfach akzeptieren, dass es nicht für jede Standorteingabe funktioniert und eine Fehlermeldung hinzufügt. Das Problem ist, dass der Standort auf der Google Maps-Website verfügbar ist, aber nicht mit der API Ball spielt.

Irgendwelche Vorschläge?

+2

Können Sie ein Beispiel Abfrage zeigen, dass dies demonstrieren? – stuartd

+0

Ok, zum Beispiel Glasgow Flughafen zu Cameron House Loch Lomond, Alexandria, West Dunbartonshire G83 8QZ Finden Sie die Website an der ich arbeite [hier] (http://www.citycarsprivatehire.com/get-a-quote/) – icabob91

Antwort

2

Das Problem ist in den folgenden Zeilen im Code:

var start = document.getElementById("start").value + ', glasgow';

var end = document.getElementById("end").value + ', glasgow';

Sie anhängen 'glasgow' an die in der automatischen Vervollständigung angezeigten Adresse.

Ich empfehle die Verwendung von placeId direkt aus Autocomplete-Boxen anstelle von Adresstexten erhalten, wenn Sie eine Route berechnen. Mit den Orts-IDs berechnen Sie eine genaue Route für die vom Benutzer ausgewählten Orte: Wenn Sie derzeit einen Text anhängen und diesen an den Routenplaner-Dienst übergeben, können Sie wirklich falsche Ergebnisse erhalten.

Bitte haben Sie einen Blick auf das Beispiel, das zeigt, wie die automatische Vervollständigung implementieren mit Platz Ids:

http://jsbin.com/ponoyod/4/edit?html,output

+0

Danke das hat perfekt funktioniert und vorzügliches Beispiel – icabob91

Verwandte Themen