Google maps api 3 带有多个标记的google api v3信息窗口不';行不通

Google maps api 3 带有多个标记的google api v3信息窗口不';行不通,google-maps-api-3,infowindow,marker,Google Maps Api 3,Infowindow,Marker,我试图在infowindow内容上写下我循环的记录编号 结果是我读取了每个信息窗口的最后一个记录编号(10),而不是1,2,3…10 有人能帮我吗?提前感谢 代码如下: function generaMappaMulti() { var CoordinataIniziale = new google.maps.LatLng(44.714957, 10.733647); //set initial coordinate var opzioni = {

我试图在infowindow内容上写下我循环的记录编号
结果是我读取了每个信息窗口的最后一个记录编号(10),而不是1,2,3…10
有人能帮我吗?提前感谢
代码如下:

    function generaMappaMulti() {

        var CoordinataIniziale = new google.maps.LatLng(44.714957, 10.733647);   //set initial coordinate
        var opzioni = { center: CoordinataIniziale, zoom: 10, mapTypeId: google.maps.MapTypeId.ROADMAP };  //set options to the map


        map = new google.maps.Map(document.getElementById("canvas_mappa"), opzioni);

        [...]

        for (var i = 0; i < 10; i += 1) {     //for each row...

            var Coordinate = new google.maps.LatLng(ObjLat, ObjLon);  

            marker = new google.maps.Marker({ position: Coordinate, map: map});   //add a marker to the map

            var infowindow = new google.maps.InfoWindow({
                content: i.toString()   //here is where i'm trying to write record number on the infowindows
            });


            google.maps.event.addListener(marker, 'click', function () {
                infowindow.open(map, this);
            });


        }

    }
    google.maps.event.addDomListener(window, 'load', initialize);
函数generaMappaMulti(){
var coordinaniziale=new google.maps.LatLng(44.714957,10.733647);//设置初始坐标
var opzioni={center:coordinainiziale,zoom:10,mapTypeId:google.maps.mapTypeId.ROADMAP};//设置地图选项
map=new google.maps.map(document.getElementById(“canvas_mappa”),opzioni);
[...]
对于(var i=0;i<10;i+=1){//对于每一行。。。
var坐标=新的google.maps.LatLng(ObjLat,ObjLon);
marker=new google.maps.marker({position:Coordinate,map:map});//向地图添加一个标记
var infowindow=new google.maps.infowindow({
content:i.toString()//这里是我试图在infowindows上写入记录编号的地方
});
google.maps.event.addListener(标记,'click',函数(){
打开(地图,这个);
});
}
}
google.maps.event.addDomListener(窗口“加载”,初始化);

尝试以下方法:仅创建一个信息窗口,并在事件侦听器中使用带有闭包的
setContent()
方法

var infowindow = new google.maps.InfoWindow();

for (var i = 0; i < 10; i += 1) { //for each row...

    var Coordinate = new google.maps.LatLng(ObjLat, ObjLon);

    var marker = new google.maps.Marker({
        position: Coordinate,
        map: map
    }); //add a marker to the map

    google.maps.event.addListener(marker, 'click', (function (marker, i) {
        return function () {
            infowindow.setContent('Your content goes here');
            infowindow.open(map, marker);
        }
    })(marker, i));
}
var infowindow=new google.maps.infowindow();
对于(var i=0;i<10;i+=1){//对于每一行。。。
var坐标=新的google.maps.LatLng(ObjLat,ObjLon);
var marker=new google.maps.marker({
位置:坐标,
地图:地图
});//在地图上添加一个标记
google.maps.event.addListener(标记,'click',(函数(标记,i){
返回函数(){
setContent(“您的内容放在这里”);
信息窗口。打开(地图、标记);
}
})(marker,i));
}
下面是一个工作示例