开发者

google maps Get Latitude and Longitude from zip code

Is i开发者_StackOverflowt possible to get longitude and latitude using google api just passing zip/postal code ?

Thanks for any hints, bye


Simply create an instance of google.maps.Geocoder and call its geocode method, passing in an object that possesses the attributes necessary for it to be a GeocoderRequest.

Thus:

var geocoder = new google.maps.Geocoder();
geocoder.geocode({address: /* zip you got from user input */},
    function(results_array, status) { 
        // Check status and do whatever you want with what you get back
        // in the results_array variable if it is OK.
        // var lat = results_array[0].geometry.location.lat()
        // var lng = results_array[0].geometry.location.lng()
});


You can use this alternately :

URL : http://maps.googleapis.com/maps/api/geocode/json?address=santa+cruz&components=postal_code:695564&sensor=false

Simply call this url in a jquery-ajax and you will get the lat long in result.

Example using jquery-ajax :

$(document).ready(function(){

    var zipcode = 695564;

    $.ajax({
       url : "http://maps.googleapis.com/maps/api/geocode/json?address=santa+cruz&components=postal_code:"+zipcode+"&sensor=false",
       method: "POST",
       success:function(data){
           latitude = data.results[0].geometry.location.lat;
           longitude= data.results[0].geometry.location.lng;
           alert("Lat = "+latitude+"- Long = "+longitude);
       }

    });
});

Sample JSON result from google api :

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "695564",
               "short_name" : "695564",
               "types" : [ "postal_code" ]
            },
            {
               "long_name" : "Thiruvananthapuram",
               "short_name" : "TVM",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "Kerala",
               "short_name" : "KL",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "India",
               "short_name" : "IN",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Kerala 695564, India",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 8.5894172,
                  "lng" : 77.0210912
               },
               "southwest" : {
                  "lat" : 8.5616185,
                  "lng" : 76.96664299999999
               }
            },
            "location" : {
               "lat" : 8.5753702,
               "lng" : 76.99310740000001
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 8.5894172,
                  "lng" : 77.0210912
               },
               "southwest" : {
                  "lat" : 8.5616185,
                  "lng" : 76.96664299999999
               }
            }
         },
         "partial_match" : true,
         "types" : [ "postal_code" ]
      }
   ],
   "status" : "OK"
}

Cheers..

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜