2012-02-22 149 views
4

我想通过点击谷歌地图上的标记来传递相关标记ID。我使用marker.getId()函数检索标记ID。但是标记ID不会与url一起传递。我怎样才能做到这一点?任何帮助?在Google地图中获取标记ID

function AddressMap(lat,lang,markerid) 
{ 
var latLng = new google.maps.LatLng(lat,lang); 
var marker = new google.maps.Marker({ 
    'map': map, 
    position: latLng, 
    'latitude' :lat, 
    'longitude' :lang, 
    icon: image, 
    shadow: shadow, 
    id: markerid 

}); 

markers.push(marker); 
google.maps.event.addListener(marker, 'click', function() {    
      window.location = "www.cickstart.com/" + marker.getId(); 

     }); 
} 

回答

8

你可以尝试直接访问ID:

google.maps.event.addListener(marker, 'click', function() {    
    window.location = "www.cickstart.com/" + marker.id; 
}); 
+0

由于msonsona其工作。 – srinu 2012-02-23 06:11:39

9

做到这一点的最好办法是增加一个元数据标记

var marker = new google.maps.Marker(markerOptions); 
marker.metadata = {type: "point", id: 1}; 

,如果你有这么多的标记推标记到数组标记。 您可以添加所需的任何数据。并简单地调用它,设置它或得到它。

这样一个样本:

markers[0].metadata.id