selfhtml.de - Alles für den Webmaster!

 

Empfehlung:

wix.com

Kostenlose Homepage

Besuchen Sie auch:

Jobs:

Javascript-Funktion mit Google Maps API

Autor: caipiranja
Datum: 27.05.2014 09:26:12

Hallo!

Ich will das folgende Script verwenden, um auf einer Website eine google-Karte zu verwenden, auf der ich mehrere Adressen markiere:
http://andreknieriem.de/adresskoordinaten-mit-der-google-maps-api-3-und-jquery-bekommen/

Ich möchte das Script aber so anpassen, dass die Koordinaten nicht in ein DIV geschrieben werden, sondern Rückgabewert der Funktion getcoord() sind.

Was muss ich tun?

Folgender Versuch bringt nicht das gewünschte Ergebnis:

function getcoord(adr) {
  var user1Location = adr;
       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();
   var koo = lat1 +','+ lng1;
   return koo;
});
}

Aber ein "alert(getcoord('Kurfürstenstraße 1, 12105 Berlin'))" gibt dann als Ergebnis "undefined" zurück.

Was mache ich falsch?



Re: Javascript-Funktion mit Google Maps API

Autor: caipiranja
Datum: 27.05.2014 10:38:00

> Hallo!
>
> Ich will das folgende Script verwenden, um auf
> einer Website eine google-Karte zu verwenden, auf
> der ich mehrere Adressen markiere:
>
> http://andreknieriem.de/adresskoordinaten-mit-der-google-maps-api-3-und-jquery-bekommen/
>
> Ich möchte das Script aber so anpassen, dass die
> Koordinaten nicht in ein DIV geschrieben werden,
> sondern Rückgabewert der Funktion getcoord()
> sind.
>
> Was muss ich tun?
>
> Folgender Versuch bringt nicht das gewünschte
> Ergebnis:
>
> function getcoord(adr) {
>   var user1Location = adr;
>        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();
>    var koo = lat1 +','+ lng1;
>    return koo;
>   });
> }
>
> Aber ein "alert(getcoord('Kurfürstenstraße 1,
> 12105 Berlin'))" gibt dann als Ergebnis
> "undefined" zurück.
>
> Was mache ich falsch?
>

Zusatz: wenn ich zum Testen statt des "return koo;" ein "alert(koo);" mache, dann gibt er die korrekten Koordinaten aus. Es hängt also bloß am "return". Wie geht denn das bei dieser verschachtelten Funktion in Funktion?



Re: Javascript-Funktion mit Google Maps API

Autor: reporter
Datum: 28.05.2014 12:52:47

Hallo,

die Methode 'getcoord()' besitzt keinen Rückgabewert und somit ist die Meldung richtig.