0

我正在尝试将 id 属性添加到使用 Gmaps4rails gem(顺便说一句很棒的 gem)创建的标记中,以便在单击标记时可以使用该 id 修改列表元素。

现在我有这个:

@users.to_gmaps4rails do |user, marker|                                                                                                          
    marker.title user.name
    marker.json "\"id\": #{user.id}"
end

,但它似乎不起作用。

我正在尝试像这样读取 id 属性:

for (var i = 0; i <  Gmaps.map.markers.length; ++i) {   
      google.maps.event.addListener(Gmaps.map.markers[i].serviceObject, 'click', function(event) {                 
        alert(event.id);   //<-------------Not working     
      });
    }

有什么想法可以将我的用户 ID 存储到标记中,以便我可以在点击事件块中读取它吗?

4

1 回答 1

2

做:

for (var i = 0; i <  Gmaps.map.markers.length; ++i) {
  var marker = Gmaps.map.markers[i];
  google.maps.event.addListener(marker.serviceObject, 'click', onMarkerClick(marker, event));
}

function onMarkerClick(marker, event){
  return function(event){
    alert(marker.id);
  }
}
于 2012-08-14T07:28:37.053 回答