Javascript 谷歌API循环信息窗口问题

Javascript 谷歌API循环信息窗口问题,javascript,arrays,google-maps,loops,google-api,Javascript,Arrays,Google Maps,Loops,Google Api,以下代码有问题。。谷歌地图标记显示良好,但相关信息窗口不会在单击时显示。单击时,不会发生任何操作。有什么建议吗?谢谢大家! var length = data[0].length; var infowindow = []; var contentString = []; var marker = []; for (var i = 0; i < length; i++) { var x = data[0][i].number; var pos = new google

以下代码有问题。。谷歌地图标记显示良好,但相关信息窗口不会在单击时显示。单击时,不会发生任何操作。有什么建议吗?谢谢大家!

var length = data[0].length;

var infowindow = [];
var contentString = [];
var marker = [];

for (var i = 0; i < length; i++) {

    var x = data[0][i].number;

    var pos = new google.maps.LatLng(data[0][i].lat, data[0][i].long);

    marker[i] = new google.maps.Marker({
        position: pos,
        map: map,
        icon: 'http://maps.google.com/mapfiles/ms/icons/' + data[0][i].color + '-dot.png',
        description: data[0][i].providerfirst,
        id: i
    });

    //document.write(marker[i].icon);


    contentString[i] = '<div id="content" class="infowindow">' +
        '<div id="siteNotice">' +
        '</div>' +
        '<h1 id="firstHeading" class="firstHeading"> ' + data[0][i].providerfirst + ' ' +
        data[0][i].providerlast + ', ' + data[0][i].credentials + '</h1>' +
        '<p>' +
        data[0][i].address + '<br>' +
        data[0][i].city + ', ' + data[0][i].state + ', ' + data[0][i].zip + '<br>' +
        '</p>' +
        '<p>NPI: ' + data[0][i].npi + '</p>' +
        '<p>Network: ' + data[0][i].type + '</p>' +
        '<div id="bodyContent">' +
        '</div>' +
        '</div>';

    //document.write(contentString[i]);


    //document.write(infowindow[i].content);

    infowindow[i] = new google.maps.InfoWindow({
        content: contentString[i]
    })

}
var length=data[0]。长度;
var infowindow=[];
var contentString=[];
var标记=[];
对于(变量i=0;i”+
数据[0][i]。城市+”,“+数据[0][i]。州+”,“+数据[0][i]。邮编+”
'+ “

”+ “NPI:”+数据[0][i]。NPI+”

'+ “网络:”+数据[0][i]。键入+”

”+ '' + '' + ''; //document.write(contentString[i]); //document.write(infowindow[i].content); infowindow[i]=新的google.maps.infowindow({ 内容:contentString[i] }) }
你需要把

contentString[i]  = '<div id="content" class="infowindow">' +
                      '<div id="siteNotice">' +
                      '</div>' +
                      '<h1 id="firstHeading" class="firstHeading"> ' + data[0][i].providerfirst + ' ' + 
                      data[0][i].providerlast + ', ' + data[0][i].credentials + '</h1>' +
                      '<p>' + 
                      data[0][i].address + '<br>' +
                      data[0][i].city + ', ' + data[0][i].state + ', ' + data[0][i].zip + '<br>' +
                      '</p>' +
                      '<p>NPI: ' + data[0][i].npi + '</p>' +  
                      '<p>Network: ' + data[0][i].type + '</p>' +
                      '<div id="bodyContent">' +
                      '</div>' +
                      '</div>';

                      //document.write(contentString[i]);


                    //document.write(infowindow[i].content);

                  infowindow[i] = new google.maps.InfoWindow({
                    content: contentString[i]})
你需要理解javascript的概念

您需要一个单击处理程序,因为您创建了信息窗口和数据,所以您没有以我所看到的任何方式将它们关联起来

marker[i].addListener('click',function(){
    infowindow[i].open(map,marker[i]);
});

你没有任何事件监听器可以点击标记。谢谢你的回复,但是我得到了与建议完全相同的行为。
marker[i].addListener('click',function(){
    infowindow[i].open(map,marker[i]);
});