How do I alert the latitude in this Google Maps javascript?

17,418

Solution 1

Use results[0].geometry.location.lat() to get the latitude and results[0].geometry.location.lng() for the longitude.

Solution 2

If you look at the API, location isn't an array (that's the main issue here), it's a property, so .location is the correct way to access it, not .location[0].

The official documentation is a bit hard to find for specific types, but here are updated docs on that location (a LatLng type):

The toString() is what you're getting in an alert (lat, long), there's also .lat() for latitude and .lng() for longitude, like this:

alert(results[0].geometry.location.lat());
alert(results[0].geometry.location.lng());
Share:
17,418
TIMEX
Author by

TIMEX

Updated on July 20, 2022

Comments

  • TIMEX
    TIMEX almost 2 years

    As you can see, there is a line in there that does an alert. It's "undefined". Whereas if I just alert results[0].geometry.location, it alerts (41.321, 41.556).

    I just want to alert it and set it (as an int) to one of my id_lat and id_longs...

    $("#geocodesubmit").click(function(){
            $("#id_lat").val("");
            $("#id_long").val("");
            var address = $("#addressinput").val();
            geocoder.geocode( { 'address': address}, function(results, status) {
            if (status == google.maps.GeocoderStatus.OK) {
                $("#badlocation_holder").hide();
                $("#map_canvas").show();
                $("#map_canvas_holder").show().css("background-color", "#E6E6FA").animate({"background-color":"#f5f5f5"}, 800);
                ;
                var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);  
                map.setCenter(results[0].geometry.location);
    
                alert(results[0].geometry.location[1]); //this is undefined.
    
                $("#id_lat").val(results[0].geometry.location[0]);
                $("#id_long").val(results[0].geometry.location[1]);
    
    
                var marker = new google.maps.Marker({
                    map: map, 
                    position: results[0].geometry.location,
                    draggable:true
                });
              } else {
                  $("#map_canvas_holder").hide();
                  $("#badlocation_holder").show().css("background-color","#F08080").animate(
                  {"background-color":"#f5f5f5"},800);
              }
            });
            return false;
        });