Możesz sprawdzić poniższy przykład. Wierzę, że powinna ona być oczywista, aby przestrzegać:
<!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&v=2&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>
Zrzut ekranu:
Cześć Daniel, dzięki dla ciebie przykład. Wygląda na to, że działa, z wyjątkiem niektórych kodów pocztowych. Oto przykład tablica: 'HU80QJ', 'HU74UR', 'HU53LR', 'HU53BD', 'HU74WA', 'HU106BA', 'LS110DB' Pierwsze trzy prace, a ostatni tylko dwie, ale HU5 3BD i HU7 4WA nie. Działają, jeśli wykonujesz wyszukiwanie w Mapach Google przez nich samych, ale nie w tym przykładzie. Ale jeśli tablica zawiera tylko te, które działa?!? Czy istnieje limit liczby kodów pocztowych, które możesz zrobić naraz? – tonyyeb
Wypróbowałem jeszcze kilka rzeczy i okazało się, że Mapy Google są bardzo niedokładne przy konwersji kodów pocztowych przy użyciu tej metody. Ale jeśli wpiszę kod pocztowy prosto na maps.google.co.uk, jest on bardzo dokładny. Dlaczego to? – tonyyeb
Możesz ustawić region w kodzie za pomocą: 'var geocoder = new GClientGeocoder(); geocoder.setBaseCountryCode ('uk'); '- to pozwoliłoby ci usunąć dołączony kod' + ', UK'' z powyższego kodu. Może również poprawić dokładność wyniku. –