Javascript 使用json.parse添加google地图标记

Javascript 使用json.parse添加google地图标记,javascript,ajax,json,google-maps-api-3,Javascript,Ajax,Json,Google Maps Api 3,考虑到下面的代码,我试图在控制台中打印解析数组的长度,并且该过程正常工作,现在即使我已经有了通过json代码中加载的json文件添加解析信息的数组,我也无法在地图中显示标记数组 var映射; 函数初始化(){ 变量映射选项={ 缩放:8, 中心:新google.maps.LatLng(41.9083212.52407) }; map=new google.maps.map(document.getElementById('map-canvas'), 地图选项); } google.maps.e

考虑到下面的代码,我试图在控制台中打印解析数组的长度,并且该过程正常工作,现在即使我已经有了通过json代码中加载的json文件添加解析信息的数组,我也无法在地图中显示标记数组

var映射;
函数初始化(){
变量映射选项={
缩放:8,
中心:新google.maps.LatLng(41.9083212.52407)
};
map=new google.maps.map(document.getElementById('map-canvas'),
地图选项);
}
google.maps.event.addDomListener(窗口“加载”,初始化);
var xmlhttp=new XMLHttpRequest();
var url=“json/prova.json”;
xmlhttp.onreadystatechange=函数(){
if(xmlhttp.readyState==4&&xmlhttp.status==200){
myFunction(xmlhttp.responseText);
}
}
open(“GET”,url,true);
xmlhttp.send();
功能myFunction(响应){
var arr=JSON.parse(响应);
var i;
var out=“”;
对于(i=0;i
html,主体,#地图画布{
身高:100%;
边际:0px;
填充:0px
}

简单地图
客户

hmm!!!。您的json具有lat和lng标记,您可以尝试使用示例代码将多个标记添加到GoogleMap

var infowindow = [];
var marker = [];
function myFunction(response) {
    var arr = JSON.parse(response);
    for(var i = 0; i < arr.length; i++) {
            (function(i){ //new line 
            infowindow[i] = new google.maps.InfoWindow({
                content: arr[i].title
            });
            marker[i] = new google.maps.Marker({
                    title: arr[i].title,
                    animation: google.maps.Animation.DROP,
                    //animation: google.maps.Animation.BOUNCE,                        
                    position: new google.maps.LatLng(arr[i].latitude,arr[i].longitude)
                });
            google.maps.event.addListener(marker[i], 'click', function() {
               infowindow[i].open(map,this);
            });
            })(i); //new line
    }
}
var infowindow=[];
var标记=[];
功能myFunction(响应){
var arr=JSON.parse(响应);
对于(变量i=0;i
您能否提供一个JSON示例和一个代码段(a),该代码段(a)可以在没有javascript错误的情况下工作(或至少说明问题)[{“title”:“Coop.Sociale Prassi e e Ricerca Onlus”,“latitude”:41.9114145,“longitude”:12.524204},{“title”:“Astronave”,“latitude”:41.912333,“longitude”:12.525531},{“title”:“Casa”,“latitude”:41.877719,“经度”:12.558317}]我已经测试了json文件,它工作了您没有尝试在代码中创建任何标记您是对的事实是我不知道在哪里尝试创建它您可以建议我代码的正确部分在哪里添加您的代码片段吗?顺便说一句,谢谢你的回复,我试过复制和过去作为一个面子问题,我不知道这段代码在ajax请求之上还是之下的位置?我尝试在ajax请求中插入这一部分,因为在ajax请求中声明了arr变量。无论如何,我不能添加任何标记,我在镜像服务器上运行了代码,但没有发生任何问题。很抱歉,请删除行图标:新的google.maps.MarkerImage(图标),我试图用国会大厦的字母I来替换信息,但我的朋友还是什么都没发生,相信我,我已经尝试过你的更新答案事实是地图正确居中,我可以使用console.log获得数组的长度,所以我假设ajax请求工作正常,但我无法在地图上添加这些标记,我很确定我犯了一些愚蠢的错误,但我不知道在哪里,谢谢你,我没有尝试这么做,我用了镜像服务器,你能建议我用小提琴吗?无论如何,在调试中,我都可以看到Info或INFOVINDON,无论大写字母是否未定义,我都会在小提琴上验证代码