【发布时间】:2014-10-25 17:17:20
【问题描述】:
我想创建一个标记和一个弹出窗口,其中包含一个按钮,单击该按钮将触发 JQuery-Ajax-Function 以编辑弹出窗口的内容。
使用按钮的 onclick() 属性,我似乎找不到将弹出窗口的坐标传递给 Ajax 函数的方法。我想传递坐标,因为据我所知,这是清楚识别每个弹出窗口/标记的唯一方法。
这是我目前的代码:
function onMapClick(eventData) {
var popup = L.popup()
.setLatLng(eventData.latlng)
.setContent("<input type=\"button\" onclick=\"editMarker(" + eventData.latlng + ")\" value=\"Click to edit!\">")
L.marker(eventData.latlng, { draggable : true })
.bindPopup(popup)
.on("click", openMarker)
.on("contextmenu", deleteMarker)
.on("dblclick", editMarker)
.addTo(map);
}
function editMarker(eventData) {
alert("Editing marker at " + eventData);
}
但是,这种方式 onclick() 的参数是“LatLng(xx, -yy)”,这当然会导致未定义的函数调用。我发现无法获取弹出窗口的纯坐标以便将它们传递给编辑函数。
a) 清楚地识别弹出窗口和 b) 将该 ID 传递给另一个函数的最佳方法是什么?
【问题讨论】:
标签: javascript onclick popup leaflet identifier