Google Geocode API JSON

PCGamer

Mitglied
Hallo,

ich möchte per Google Maps Javascript V. 3 realisieren. So weit alles in Ordnung, Karte wird angezeigt.
Jetzt möchte ich aber mit der API Google geocode meine Adresse in lon und lat haben um sie dann per Google Maps verwenden zu können.
Hier liegt jetzt das Problem: Wie kann ich die lon und lat Werte aus der zurückbekommenen JSON Antwort lesen?

So seht z.B. eine Antwort aus:
Code:
{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "4",
               "short_name" : "4",
               "types" : [ "street_number" ]
            },
            {
               "long_name" : "Heinrichstraße",
               "short_name" : "Heinrichstraße",
               "types" : [ "route" ]
            },
            {
               "long_name" : "Innere Neustadt",
               "short_name" : "Innere Neustadt",
               "types" : [ "sublocality", "political" ]
            },
            {
               "long_name" : "Neustadt",
               "short_name" : "Neustadt",
               "types" : [ "sublocality", "political" ]
            },
            {
               "long_name" : "Dresden",
               "short_name" : "Dresden",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Dresden",
               "short_name" : "Dresden",
               "types" : [ "administrative_area_level_3", "political" ]
            },
            {
               "long_name" : "Dresden",
               "short_name" : "DD",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "Sachsen",
               "short_name" : "SN",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "Deutschland",
               "short_name" : "DE",
               "types" : [ "country", "political" ]
            },
            {
               "long_name" : "01097",
               "short_name" : "01097",
               "types" : [ "postal_code" ]
            }
         ],
         "formatted_address" : "Heinrichstraße 4, 01097 Dresden, Deutschland",
         "geometry" : {
            "location" : {
               "lat" : 51.05947630,
               "lng" : 13.74175790
            },
            "location_type" : "ROOFTOP",
            "viewport" : {
               "northeast" : {
                  "lat" : 51.06082528029150,
                  "lng" : 13.74310688029150
               },
               "southwest" : {
                  "lat" : 51.05812731970850,
                  "lng" : 13.74040891970850
               }
            }
         },
         "partial_match" : true,
         "types" : [ "street_address" ]
      }
   ],
   "status" : "OK"
}

Mein Code ist:
HTML:
<script type='text/javascript' src='https://maps.google.com/maps/api/js?sensor=false'></script><script type='text/javascript' src='https://maps.googleapis.com/maps/api/geocode/json?address=01097+Heinrichstr. 4&sensor=false'></script>
<script type='text/javascript'>
      var latitude = myJSONResult.results.location.lat;
      var map;
      function initialize() {
        var myOptions = {
          zoom: 16,
          center: new google.maps.LatLng(-34.397, 150.644),
          mapTypeId: google.maps.MapTypeId.ROADMAP
        };
        map = new google.maps.Map(document.getElementById('map_canvas'),
            myOptions);
      }


    </script>

Firebug sagt folgenden Fehler:
Code:
myJSONResult is not defined
var latitude = myJSONResult.results.location.lat;

Kann mir da jemand ein Tipp geben?
Ich würde mich sehr auf Antworten freuen
PCGamer
 
Ist zwar nicht genau das was du suchst aber vllt hilft es dir ja weiter wenn du einen anderen ansatzt wählen willst/kannst

Code:
<script type="text/javascript" language="javascript">
 
function success(position) 
  {
  lat = position.coords.latitude;
  long = position.coords.longitude;
  karte=document.getElementById("Maparea");
  karte.src="https://maps.googleapis.com/maps/api/staticmap?center="+lat+","+long+"&zoom=15&size=320x200&markers="+lat+","+long+"&sensor=false";
  document.getElementById("ausgabe").innerHTML="Latitude " + lat + ", Longitude " + long;
  }

function error(msg) 
  {
  console.log(typeof msg == 'string' ? msg : "error");
  }
  if (navigator.geolocation) 
  {
  navigator.geolocation.getCurrentPosition(success, error);
  }
  else 
  {
  alert("GeoLocation API ist NICHT verfügbar!");
  }
 

</script>
  <img id="Maparea" src="" width=320 heigth=200>
  <p id="ausgabe"></p>
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück