1
我在Google地圖上顯示地址時遇到問題。我嘗試了一切,但它不工作。它只顯示第一個標記,即使我點擊其他地址。我怎樣才能讓它顯示其他標記?只有在google地圖上顯示的第一個標記
<xsl:for-each select="Attractions/Museums">
<a href="#maps" data-role="button" id="addMarker" onclick="addMarker();" data-theme="c"> <xsl:value-of select="address"/></a>
</xsl:for-each>
<script type="text/javascript">
var map;
var geocoder = new google.maps.Geocoder();
$("#maps").on('pageshow', function() {
google.maps.event.trigger(map,'resize');
})
// initialize the map
function initialize() {
var mapOptions = {
zoom: 12,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById("map-canvas"),
mapOptions);
function addMarker() {
var address = document.getElementById("addMarker").text;
geocoder.geocode({ 'address': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
var image = 'flag1.png';
var markers = new google.maps.Marker({
map: map,
icon: image,
position: results[0].geometry.location
});
} else {
alert("Geocode was not successful for the following reason: " + status);
}
});
}
google.maps.event.addDomListener(window, 'load', initialize);
謝謝你的回覆。 我注意到,但是因爲數據是使用xsl從XML文件中讀取的,所以很棘手。它循環讀取數據,因此我正在尋找一種替代方法! – Zen
它不應該是棘手的,你只需要改變每個鏈接的ID。我假設每個地址在數據庫中都有不同的ID,爲什麼不使用它呢? – amosmos
不,數據標籤在XML文檔內部是相似的,這就是爲什麼我使用xsl循環並獲取數據的原因。我試圖通過tagName,名稱和其他不同的方式獲取元素,但它不起作用。嘗試標記陣列,它並沒有工作,我是新手谷歌地圖 – Zen