2013-03-29 164 views
24

在我的域模型,對有問題的單位,我有:地方的位置標記

  • 名稱(例如,水石韋克菲爾德)
  • 的街道地址(如61-62 Bishopgate步行)
  • 和郵政代碼(例如WF1 1YB)

從以上三條信息,我怎樣才能放置在地圖上的標記?我使用谷歌地圖API 3.

感謝

+0

一個細節博客:HTTP ://goo.gl/d8w1J0 –

+1

@SureshKamrushi你稱之爲「詳細博客」,但它只是一個代碼片斷,根本沒有解釋它的任何作用。 – WongKongPhooey

回答

41

試試這個例子:

HERE THE ORIGINAL

HTML

 <body onload="initialize()"> 
     <div> 
      <input id="address" type="text" value="Sydney, NSW"> 
      <input type="button" value="Geocode" onclick="codeAddress()"> 
     </div> 
     <div id="map-canvas" style="height:90%;top:30px"></div> 
     </body> 

JS

<script> 
    var geocoder; 
    var map; 
    function initialize() { 
    geocoder = new google.maps.Geocoder(); 
    var latlng = new google.maps.LatLng(-34.397, 150.644); 
    var mapOptions = { 
     zoom: 8, 
     center: latlng, 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
    } 
    map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions); 
    } 

    function codeAddress() { 
    var address = document.getElementById('address').value; 
    geocoder.geocode({ 'address': address}, function(results, status) { 
     if (status == google.maps.GeocoderStatus.OK) { 
     map.setCenter(results[0].geometry.location); 
     var marker = new google.maps.Marker({ 
      map: map, 
      position: results[0].geometry.location 
     }); 
     } else { 
     alert('Geocode was not successful for the following reason: ' + status); 
     } 
    }); 
    } 
</script> 
+0

感謝您的編輯。因此,[地址]輸入將採用逗號分隔的名稱,街道和郵政編碼? – Ciwan

+0

對不起,我粘貼錯誤exmpale,看看編輯 – grigno

+0

直接嘗試https://google-developers.appspot.com/maps/documentation/javascript/examples/geocoding-simple它來自gmaps文檔。 – grigno