我的应用程序绘制从MySQL数据库读取的地图上的一堆标记,我想在每个infowindows中显示一些内容。我的问题是infowindows将只显示我的数据库中最后一项的内容。下面是我的代码,我只是试图显示位置的名称。我试着提醒变量,看看它们是否确实显示了正确的内容,它们是什么。我意识到这是一个JavaScript关闭问题,但我不知道如何去解决这个问题。PHP关闭问题谷歌地图v3
var startLat;
var startLng;
var locationName;
<?php foreach($workstations as $workstation):?>
startLat = "<?php echo $workstation['lat']?>";
startLng = "<?php echo $workstation['lng']?>";
locationName = "<?php echo $workstation['name']?>";
var marker = new google.maps.Marker({
position: new google.maps.LatLng(startLat, startLng),
map: map,
icon: "images/purple.png"
});
//load all the infowindow content
var contentString = [
'<div id="InfoText" style="margin: 0px; padding: 0px; overflow: hidden; border:0px">',
'<div class="tabs"><ul><li><a href="#tab1">General</a></li>',
'<li><a href="#tab2">General 2</a></li></ul>',
'<div id="tab1">',
'<b>' + locationName + '</b> - ' + locationName + '<BR>',
'<input id="save" type="submit" value="Reserve Today" onclick="saveStation(addMarker)" />',
'</div>',
'<div id="tab2">',
'</div>',
'</div>'
].join('');
//alert(contentString);
var infowindow = new google.maps.InfoWindow({content: contentString});
new google.maps.event.addListener(marker, 'click', (function(marker) {
return function(){
infowindow.open(map, marker);
}
})(marker));
<?php endforeach;?>
感谢您的帮助!我给了这个尝试,它的工作。感谢您的解释,非常清楚。 – Albert 2011-06-14 06:56:54