地理编码没有出现

时间:2013-11-09 14:12:52

标签: google-maps-api-3

以下是我的地理编码的javascript。我的地图不会出现,我似乎无法找到我的错误。请指教。

我试图显示实际位置的“真实”值。 API是在Google开发者网站上正确生成的。

<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.get.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>

<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?libraries=drawing&sensor=true"></script>

2 个答案:

答案 0 :(得分:2)

您至少有3个javascript错误会导致问题:

  1. javascript区分大小写:

    • 中心与中心不同
    • Latlng与LatLng
    • 不同
  2. mapOptions中的“Center:latlng”后面缺少逗号

  3. 这是不正确的(额外的“.get”):

    var address = document.get.getElementById('address')。value;

  4. 应该是:

    var address = document.getElementById('address').value;
    

    正如Jimmie Johansson所观察到的那样,没有调用初始化(或者对于那个问题的代码地址)

    working example

答案 1 :(得分:1)

你在任何地方运行initialize()吗?没有它,你的地图就不会出现。