Gmaps4rails:单击关联的标记时获取位置对象ID

时间:2011-11-27 15:34:51

标签: ruby-on-rails-3 google-maps-api-3 gmaps4rails

我在Rails 3应用程序中使用Gmaps4rails。 当我点击地图上的标记但我没有找到如何获得与标记关联的对象ID时,我找到了触发javascript函数的方法

这是我的代码:

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

我需要使用db中设置的对象id调用loadloc,而不是标记索引i。有办法吗?

1 个答案:

答案 0 :(得分:0)

您需要将addListener中的第三个选项设置为与事件关联的函数。像这样:

google.maps.event.addListener(marker, 'click', (function(event, index) {
    return function(){
        loadloc(index);
      }
    })(marker,i));

改编自:http://srsz750b.appspot.com/api3/polylines-multiple.html