Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/452.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript GoogleMaps:将额外参数传递到GeoCoder for InfoWindows_Javascript_Google Maps_Google Maps Api 3_Scope - Fatal编程技术网

Javascript GoogleMaps:将额外参数传递到GeoCoder for InfoWindows

Javascript GoogleMaps:将额外参数传递到GeoCoder for InfoWindows,javascript,google-maps,google-maps-api-3,scope,Javascript,Google Maps,Google Maps Api 3,Scope,这是我的第一篇文章。我完全被卡住了,需要一些帮助才能将infoWindows添加到谷歌地图中。我实际上要使用的数据(不是我在这里使用的API)没有lat/lon,并且有多个值 在infoWindow之前一切正常,但我无法将任何其他参数传递到geocoder回调中。提前感谢您的帮助 应归功于俞明辉:。Mine在信息窗口中使用不同的数据,可能会有大约30个标记 以下是相关代码: var map=new google.maps.map(document.getElementById('map'){ 缩

这是我的第一篇文章。我完全被卡住了,需要一些帮助才能将infoWindows添加到谷歌地图中。我实际上要使用的数据(不是我在这里使用的API)没有lat/lon,并且有多个值

infoWindow
之前一切正常,但我无法将任何其他参数传递到
geocoder
回调中。提前感谢您的帮助

应归功于俞明辉:。Mine在信息窗口中使用不同的数据,可能会有大约30个标记

以下是相关代码:

var map=new google.maps.map(document.getElementById('map'){
缩放:3,
中心:新google.maps.LatLng(0,0),
mapTypeId:google.maps.mapTypeId.ROADMAP
});
var infowindow=new google.maps.infowindow();
var标记;
var i;
var映射数据;
var位置=[];
$(文档).ready(函数(){
$.ajax({
网址:'http://api.openweathermap.org/data/2.5/weather?q=London,英国',
async:false,
成功:函数(mapData){
locations.push(mapData.name);
}
});
初始化();
});
函数初始化(){
设置标记(地图、位置);
}
函数设置标记(映射、地址){
对于(变量i=0;i
您已将myData声明为全局变量

但是这里有
mapData
作为ajax成功回调的参数

$(document).ready(function () {
    $.ajax({
    url: 'http://api.openweathermap.org/data/2.5/weather?q=London,uk',
        async: false,
        success: function (mapData) {  //locally scoped which can't override
        locations.push(mapData.name);                
        }
});
这不会覆盖全局变量

你应该这样做

var gmapData = {};
像这样使用它

$(document).ready(function () {
    $.ajax({
    url: 'http://api.openweathermap.org/data/2.5/weather?q=London,uk',
        async: false,
        success: function (mapData) {
        locations.push(mapData.name);            
        gmapData = mapData; //assign mapData to global variable
        }
});
现在在
infoWindow

 google.maps.event.addListener(marker, "click", function () {   
            //infowindow.setContent() will accept only string 
            //whereas temp is numeric, so convert to string                 
        infowindow.setContent(gmapData.main.temp.toString());
        infowindow.open(map, marker);
});

 google.maps.event.addListener(marker, "click", function () {   
            //infowindow.setContent() will accept only string 
            //whereas temp is numeric, so convert to string                 
        infowindow.setContent(gmapData.main.temp.toString());
        infowindow.open(map, marker);
});