2014-01-18 69 views
0

我需要从这个数组中获取数据:信息窗口添加到每个标记(的onclick标记)

VAR阵列= [ 'USA', 'USA办公室'],[ '加拿大', '加拿大办事处'] ]

并使用infowindow创建每个国家标记。

现在我有这个(仅国家):

jQuery(document).ready(function() { 

var map; 

var elevator; 

var myOptions = { 
    zoom: 3, 
    center: new google.maps.LatLng(54.236107, -4.548056), 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
};  

map = new google.maps.Map(jQuery('#map_canvas')[0], myOptions); 

var addresses = ['Canada', 'Germany', 'France','USA','Ireland']; 

for (var x = 0; x < addresses.length; x++) { 

    jQuery.getJSON('http://maps.googleapis.com/maps/api/geocode/json?address='+addresses[x]+'&sensor=false', null, function (data) { 

     var p = data.results[0].geometry.location;   

     var latlng = new google.maps.LatLng(p.lat, p.lng);   

     var infowindow = new google.maps.InfoWindow({ 
      content: 'addresses' 
     }); 

     var marker = new google.maps.Marker({ 
      position: latlng, 
      map: map 
     }); 

     google.maps.event.addListener(marker, 'click', function() { 
      alert("Marker clicked"); 
      infowindow.open(map,marker); 
     }); 

    }); 

} 

});

回答

0

你的数组是什么?这些地址或每个子阵列中的地址是相同的吗?

我认为你已经知道你应该对你的数组中的地址进行地理编码,以便获得lat和lng以便显示标记。

有这个Link,希望我帮忙。