Openlayers 向开放图层标记添加数据

Openlayers 向开放图层标记添加数据,openlayers,openstreetmap,markers,Openlayers,Openstreetmap,Markers,我正在使用开放式街道地图和开放式街道图层,我正在尝试创建一张罚单(标记)地图,技术人员将在其中走向标记并进行工作,然后移动到下一个。我能够创建标记,并具有触发的onclick函数。我搞不懂的是如何从标记本身提取信息。我正在创建这样的标记 addPinViaLongLat: function(icon, long, lat, popupString) { var icon_marker = new OpenLayers.Icon(icon, null, null); var mark

我正在使用开放式街道地图和开放式街道图层,我正在尝试创建一张罚单(标记)地图,技术人员将在其中走向标记并进行工作,然后移动到下一个。我能够创建标记,并具有触发的onclick函数。我搞不懂的是如何从标记本身提取信息。我正在创建这样的标记

addPinViaLongLat: function(icon, long, lat, popupString) { 
   var icon_marker = new OpenLayers.Icon(icon, null, null);
   var marker = new OpenLayers.Marker(new OpenLayers.LonLat(long, lat).transform(rapidSchedulingMap.coor_from, rapidSchedulingMap.coor_to), icon_marker);
   var popup;

   marker.events.register('mouseover', marker, function(evt) {
     popup = new OpenLayers.Popup.FramedCloud("Popup",
            new OpenLayers.LonLat(long, lat).transform(rapidSchedulingMap.coor_from, rapidSchedulingMap.coor_to),
            null,
            popupString,
            null,
            false);
       rapidSchedulingMap.map.addPopup(popup);
   });
   marker.events.register('mouseout', marker, function(evt) {
       popup.hide();
   });
   rapidSchedulingMap.bindClick(marker);
   rapidSchedulingMap.layer.addMarker(marker);
},
我想知道是否有一种方法可以添加数据,以便在单击时可以像marker.ticketNumber一样引用它。我在谷歌上没有看到过类似的东西,所以我就转到这里。希望有人有一些想法

编辑:
我发现它显示了执行marker.XXXX的能力,然后将标记推入一个数组以跟踪所有标记。

我找到了解决方案

var marker = new OpenLayers.Marker(new OpenLayers.LonLat(long, lat).transform(rapidSchedulingMap.coor_from, rapidSchedulingMap.coor_to), icon_marker);
marker.data = data;
然后,当我单击标记时,我可以执行marker.data并拖动为每个标记存储的对象。不需要做额外的数组来跟踪任何值