Holen Sie sich Adresse, Koordinaten von Google Maps API per ajax() request
Ich versuche, lng und lat-Koordinaten aus der Google Maps API durch das nächste Beispiel http://jsbin.com/inepo3/7/edit. Ich erwarte, dass der 'Erfolg' popup, aber es hält zeigt die 'Fehler' - popup.
Die google maps-Anfrage gibt die richtigen json-feedback (Kontrolle durch firebug).
<script type="text/javascript">
$().ready(function() {
$.fn.getCoordinates=function(address){
$.ajax(
{
type : "GET",
url: "http://maps.google.com/maps/api/geocode/json",
dataType: "jsonp",
data: {
address: address,
sensor: "true"
},
success: function(data) {
set = data;
alert(set);
},
error : function() {
alert("Error.");
}
});
};
$().getCoordinates("Amsterdam, Netherlands");
});
</script>
Weiß jemand, wie man dieses Problem lösen?
Grüße,
Guido Lemmens
BEARBEITEN
Fand ich eine bether-Lösung mit der Google Maps Javascript-API kombiniert in jQuery:
<script type="text/javascript">
$().ready(function() {
var user1Location = "Amsterdam, Netherlands";
var geocoder = new google.maps.Geocoder();
//convert location into longitude and latitude
geocoder.geocode({
address: user1Location
}, function(locResult) {
console.log(locResult);
var lat1 = locResult[0].geometry.location.lat();
var lng1 = locResult[0].geometry.location.lng();
$("#testDiv").html("latitude:" + lat1 + "<p>longitude:" + lng1 + "</p>");
});
});
</script>
- welche version von google map api?
- Ich bin mir nicht sicher, ich denke, v2 (können Sie konvertieren Sie die verwendeten Karten url zu einer version vielleicht?)
- ich bin mir ziemlich sicher, dass es die V3 jetzt sehen Sie es wieder.
- Warum nicht einfach die Geocoder des Google Maps JavaScript-API?
- Ich Stimme dieser änderung in JSONP ist im Grunde von Google, die Art und Weise, Menschen zu zwingen, mit Google map api-geocoder
- Ja, der Google Maps Javascript-API funktioniert gut ( jsbin.com/ujaxu4/2 ), aber ich wollte nur die Verwendung der geocoder in Kombination mit jQuery. Aber das scheint nicht möglich zu sein..?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Google Map API V3 macht es schwieriger für externe Bibliotheken arbeiten mit JSONP. Hier ist ein blog-post darüber.
JSONP-und Google Maps-API-Geokodierer Plus-Ein Update w/jQuery
Einen alternativen Weg, um die Geokodierung ist die Verwendung der Google-Map-V3-API-Geocoder-Service. Hier ist ein Beispiel, dass ich dazu beigetragen, dass eine person, die hatte ein ähnliches Problem, wie Sie zu ersetzen sein JSONP zu nutzen, Google-Map-V3 Geocoder Service. Werfen Sie einen Blick auf diese JSFiddle Demo:
Dies ist im Grunde der Kern. Wir haben im Grunde die twitter nutzen, um die tweet Adresse (DH. London, Madrid oder Georgien etc.) und konvertieren Sie die aktuelle Adresse in LatLng mit Google Maps Geocoder-Service: