2010-04-14 9 views

Respuesta

8

Es posible que desee comprobar el siguiente ejemplo. Creo que debe explicarse por sí misma para que usted siga:

<!DOCTYPE html> 
<html> 
<head> 
    <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
    <title>Google Maps API Geocoding Demo</title> 
    <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;sensor=false" 
      type="text/javascript"></script> 
    </head> 
    <body onunload="GUnload()"> 
    <div id="map_canvas" style="width: 400px; height: 300px"></div> 

    <script type="text/javascript"> 
     var geocoder = new GClientGeocoder(); 
     var map = new GMap2(document.getElementById("map_canvas")); 
     var i; 

     var postcodes = [ 
      'SL59JH', 
      'LU13TQ', 
      'SR29TD', 
      'DA75BQ', 
      'EC1V9B' 
     ]; 

     map.setCenter(new GLatLng(54.00, -3.00), 5); 

     for (i = 0; i < postcodes.length; i++) { 
      geocoder.getLatLng(postcodes[i] + ', UK', function (point) {   
      if (point) { 
       map.addOverlay(new GMarker(point)); 
      } 
      }); 
     } 
    </script> 
    </body> 
</html> 

Captura de pantalla:

Google Maps API Geocoding Demo

+0

Hola Daniel, gracias por vosotros ejemplo. Parece que funciona, excepto con ciertos códigos postales. Aquí es una matriz ejemplo: 'HU80QJ', 'HU74UR', 'HU53LR', 'HU53BD', 'HU74WA', 'HU106BA', 'LS110DB' El primer trabajo tres y el último dos hacen pero HU5 3BD y HU7 4WA no. Funcionan si haces una búsqueda de Google Map por ellos mismos, pero no en este ejemplo. Pero si la matriz solo contiene los que funciona?!? ¿Existe un límite en la cantidad de códigos postales que puede hacer a la vez? – tonyyeb

+0

Acabo de probar algunas cosas más y encontré que Google Maps es muy impreciso para convertir los códigos postales con este método. Pero si escribo el código postal directamente en maps.google.co.uk, es muy preciso. ¿Por qué es esto? – tonyyeb

+0

Puede establecer la región en código con: 'var geocoder = new GClientGeocoder(); geocoder.setBaseCountryCode ('uk'); '- esto le permitiría eliminar el '+', UK'' adjunto del código anterior. También puede mejorar la precisión del resultado. –

Cuestiones relacionadas