Javascript 如何在google地图的信息窗口中传递标记内的变量

Javascript 如何在google地图的信息窗口中传递标记内的变量,javascript,google-maps-api-3,Javascript,Google Maps Api 3,示例id显示在infoWidow中,但如何在href标记中传递 (function (marker, sample) { google.maps.event.addListener(marker, "mouseover", function (e) { infoWindow.setContent(sample.id+ ' - ' + sample.name + '</br>' + '<a href="SampleDetail.aspx?sample_i

示例id显示在infoWidow中,但如何在href标记中传递

(function (marker, sample) {
    google.maps.event.addListener(marker, "mouseover", function (e) {
    infoWindow.setContent(sample.id+ ' - ' + sample.name + '</br>' + 
    '<a href="SampleDetail.aspx?sample_id="'+ sample.id + '> Detail...</a>' );
    infoWindow.open(map, marker); 
    });
})(marker, sample);

试着这样做:

"<a href='SampleDetail.aspx?sample_id=" + sample.id + "'> Detail...</a>"

您对不匹配的字符串引号有问题:

 infoWindow.setContent(sample.id+ ' - ' + sample.name + '</br>' + 
'<a href="SampleDetail.aspx?sample_id="'+ sample.id + '> Detail...</a>' );
                                      ^
                                      |
                                     this
infoWindow.setContent(sample.id+ ' - ' + sample.name + '</br>' + 
'<a href="SampleDetail.aspx?sample_id='+ sample.id + '"> Detail...</a>' );
                                                      ^
                                                      |
                                         should be here

很抱歉,信息窗口会随之消失。当您使用console.logsample.id时,您会看到什么?您需要将其添加到该函数中,打开开发人员工具,并在控制台标记中看到该值。请让我知道那个值是多少。这个值是一个整数。正如您在代码中两次看到sample.id一样。第一个正确显示:infoWindow.setContentsample.id+'-'+sample.name++;sample.name的值是多少?也许它破坏了HTML结构?试过了,它不起作用。信息窗口完全消失。问题可能在标记以外的其他位置。您可以尝试将内容记录到console.log中,以查看sample.id或sample.name中是否存在问题。不熟悉console.log,但它们确实正确地显示在“我的代码”的信息窗口中。console.log会将您提供的字符串作为参数输出到浏览器控制台。在同一个控制台中,您可以看到可能的javascript错误。您还可以使用alert在屏幕上的alert窗口中显示该文本。sample.name可以很容易地包含一个html识别的字符,该字符包含html并破坏信息窗口内容中的代码。你一定是在开玩笑,这就是我在评论中发布的内容,OP拒绝了我的解决方案,除非我错过了其他内容。好吧,至少你能更好地解释:
(function(marker, sample) {
    google.maps.event.addListener(marker, "mouseover", function(e) {
      infoWindow.setContent(sample.id + ' - ' + sample.name + '</br>' +
        '<a href="SampleDetail.aspx?sample_id=' + sample.id + '"> Detail...</a>');
      infoWindow.open(map, marker);
    });
  })(marker, sample);