0

我寫,因爲我已經做了一個腳本,需要json數據來創建多個動態標記,它的工作原理! 現在我試圖將InfoWindow添加到每個標記,但不起作用。 我的代碼是:動態infowindow與動態標記

$.ajax({ 
    type:'GET', 
    url:"locali_json.php"+urlz, 
    success:function(data){ 
      var json = JSON.parse(data); 
      for (var i=0; i<json.length; i++) { 
      point = new google.maps.LatLng(json[i].latitudine,json[i].longitudine); 
      contentString = json[i].id_locale; 
      addMarkers(point,contentString); 
      } 
    } 
})} 


function addMarkers(point,contentString) { 
marker = new google.maps.Marker({ 
    position: point, 
    map: map 
}); 
infowindow = new google.maps.InfoWindow({ 
       content: contentString 
      }); 
markers.push(marker); // markers is an array 
infos.push(infowindow); //info is an array 
for(var j=0; j<markers.lenght; j++){ 
    google.maps.event.addListener(marker, 'click', function() { 
       infos[j].open(map,markers[j]);}) 

    }} 

有沒有人有什麼建議?或看到哪裏錯誤?

回答

0

難道你沒有在javascript控制檯中獲取javascript錯誤?

for(var j=0; j<markers.lenght; j++){ 
google.maps.event.addListener(marker, 'click', function() { 
       infos[j].open(map,markers[j]);}) 
} 
} 

也許應該是:

for(var j=0; j<markers.length; j++){ 
google.maps.event.addListener(markers[j], 'click', function() { 
      infos[j].open(map,markers[j]);}) 
} 
}