InfoWindows 有一些问题。不太确定如何处理它

Having some problems with InfoWindows. Not really sure how to approach it

我正在尝试为标记的信息窗口内容创建一个编辑系统。我需要获取点击标记的id值,但我不知道如何获取它。

我试图通过信息窗口内容中的按钮获取值 使用此代码 infowindow.setContent( "<div id='infowindow'>"+ addDescription +"</div>"+"<div id='iddiv'>Id: "+addId+"</div>"+"<button onclick='sendToEdit'>edit</button>"); 但我猜它没有用。结果是一个未定义的值。

这是 sendToEdit() 函数

function sendToEdit()
{
  var addIdStr = JSON.stringify(addId);
  $.ajax({
    url: "edit.php",
    method: "post",
    data: {addId:addIdStr},
    success: function(res)
    {
      console.log("success")
    }
  });
  window.open("edit.php");
}
function AddMarker(addDescription,addId)
  {
    var marker = new google.maps.Marker(
    {
      position: {lat: arr[0], lng:arr[1]},
      map: map,
      title: 'Click to zoom',
      id: addId,
    });
    markers.push(marker);
    google.maps.event.addListener(marker, 'click', function(){
        infowindow.close(); // Close previously opened infowindow
        infowindow.setContent( "<div id='infowindow'>"+ addDescription +"</div>"+"<div id='iddiv'>Id: "+addId+"</div>"+"<button onclick='sendToEdit()'>edit</button>");
        infowindow.open(map, marker);
      });
  }

要编辑特定标记的特定信息 window,您需要发送该标记自己的 ID。

"<button onclick='sendToEdit(" + marker.id + ")'>edit</button>"

然后你可以在你的sendToEdit函数中得到这个id:

function sendToEdit(markerId)
{
  var addIdStr = JSON.stringify(markerId);
}

希望对您有所帮助。