cordinates to placename using google maps api v3

Go To


im new to google maps, i used html5 to get user's cordinates of latitude and longitude but i wanted to get the nearest place name of the user so that he may select that,(why type if we can click?) i googled and googled but cant do any thing. i have written these scripts today....

<!DOCTYPE html>
<p id="demo">Click the button to get your position:</p>
<button onclick="getLocation()">Try It</button>
<div id="mapholder"></div>
<script type="text/javascript" src="">
//only a v3 api library
<script src=""></script>

var x=document.getElementById("demo");
function getLocation()
  if (navigator.geolocation)
  else{x.innerHTML="Geolocation is not supported by this browser.";}

function showPosition(position)
  latlon=new google.maps.LatLng(lat, lon)


  var myOptions={
  var map=new google.maps.Map(document.getElementById("mapholder"),myOptions);
  var marker=new google.maps.Marker({position:latlon,map:map,title:"Some where here"});

var geocoder = new google.maps.Geocoder();
geocoder.geocode({latLng:latlon},function(results, status) {

          if (status == google.maps.GeocoderStatus.OK) {
            if (results[0]) {
function showError(error)
    case error.PERMISSION_DENIED:
      x.innerHTML="User denied the request for Geolocation."
      x.innerHTML="Location information is unavailable."
    case error.TIMEOUT:
      x.innerHTML="The request to get user location timed out."
    case error.UNKNOWN_ERROR:
      x.innerHTML="An unknown error occurred."

i have done all these so far, now what i need to do is that, i want to get the place name for the location given by those two variables:lat,lonso that i can find the place name, can any one help me out? i have found this link which may be helpful but i cant figure it out,,, i dont need the placeinfo in the map, but i want to get place name in a variable

thanks in advanced.. In case question is not clear, please mention me, and ill try to be more clear,,,, i apologize for my language....

2012-04-03 21:30
by acidburn


You already get all what you need, a geocoding-result. (results inside the geocode()-callback)

Those results(an array) consist of different items, one of them should have a member types(also an array) where the 2nd item is set to "locality" , this usually marks the item as a city. When you found this item, the long_name - member of the item will give you the city-name.

More info:

A note related to the code:

<script type="text/javascript" src="">
//only a v3 api library
<script src=""></script>

you're loading the maps-API twice, because the first <script/> will load the maps-API and the places-library. You better remove the 2nd <script/>

2012-04-03 21:57
by Dr.Molle
thanks for the script double issue and i am sorry because i could get you.. when i alerted the result variable, it showed only the object... i mean how will i get the text from it? please help me. im new to javascript to... but again thanks that i didnt knew about the result contained exactly i wanted for... now looking forward for converting that object into arra - acidburn 2012-04-04 03:52
i tried this:

alert(results.formatted_address)//says undefined and others these too alert(results[0])//it says object alert(results.street_address)//it says undefined alert(results.locality)//it also says undefined but nothing happened every time it alerted an objec - acidburn 2012-04-04 04:15

i used json to convert object to text but couldnot find any property or may be i am missing something. i did this:

alert(JSON.stringify(results)) but i cant do any thing please hel - acidburn 2012-04-04 04:48

Use e.g. results[0].formatted_addressDr.Molle 2012-04-04 07:54
thanks a lot, it worked for m - acidburn 2012-04-05 18:37