【发布时间】:2011-09-13 05:56:03
【问题描述】:
我的应用程序在从 MySQL 数据库读取的地图上绘制了一堆标记,我想在每个信息窗口中显示一些内容。我的问题是 infowindows 只会显示我数据库中最后一个条目的内容。下面是我的代码,我只是尝试显示位置的名称。我已经尝试提醒变量以查看它们是否确实显示了正确的内容,它们是。我意识到这是一个javascript关闭问题,但我不知道如何解决这个问题。
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;?>
【问题讨论】:
标签: php javascript jquery google-maps-api-3