Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.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
Iis “地球化学艺术”;“请求的地图不存在”;部署时_Iis_Visual Studio 2012_Google Visualization - Fatal编程技术网

Iis “地球化学艺术”;“请求的地图不存在”;部署时

Iis “地球化学艺术”;“请求的地图不存在”;部署时,iis,visual-studio-2012,google-visualization,Iis,Visual Studio 2012,Google Visualization,通过使用visualization API,我能够获得秘鲁的本地地图(按省份),并在本地开发应用程序时使其正常工作 用于显示地图的代码如下所示: function cargarMapa(departamento) { var data = google.visualization.arrayToDataTable([ ['City'], [departamento] ]); var options = { region:

通过使用visualization API,我能够获得秘鲁的本地地图(按省份),并在本地开发应用程序时使其正常工作

用于显示地图的代码如下所示:

function cargarMapa(departamento)
{
    var data = google.visualization.arrayToDataTable([
        ['City'],
        [departamento]
    ]);

    var options = {
        region: 'PE',
        displayMode: 'regions',
        resolution: 'provinces',
        colorAxis: { colors: ['green'] },
        width: 465,
        height: 225
    };

    var geochart = new google.visualization.GeoChart(
        document.getElementById('geochart_div'));
    geochart.draw(data, options);
}
在我的电脑中工作时,它就像一种魅力:

例如:

每当我运行应用程序(我使用Visual Studio 2012和IIS 8)时,以及当我在笔记本电脑上部署应用程序时(仅供参考,我在大学网络中这样做时),它都会工作。但是,当我在我所在大学的本地服务器(IIS 7.5)中部署此服务器时,会出现以下错误:

仅供参考,我使用了可视化API中的其他图表,它们可以完美加载

代码是完全相同的,那么问题是什么呢


提前谢谢

您遇到的问题是这一行:

google.setOnLoadCallback(cargarMapa(departamento));
当您在函数名后面包含
()
时,您正在调用该函数,该函数立即执行并返回一些值(
null
对于
cargarMapa
google.setOnLoadCallback(null)
什么都不做,在加载API之前调用
cargarMapa
会导致问题,其中一个问题是您的地图尚未加载

要解决此问题,请创建一个调用
cargarMapa(departamento)的新函数

并将其设置为回调:

google.setOnLoadCallback(init);

请注意,
init
之后没有括号(
()
)-这将函数
init
作为参数传递给回调处理程序,就像变量一样(从技术上讲,在javascript中,函数和变量是一样的-它们都是对象)。

如果代码在笔记本电脑上运行,如果您没有运行任何可能导致问题的特殊服务器端代码,我倾向于认为问题要么与网络相关,要么您没有正确加载API。你的大学服务器上有我可以测试的面向公众的页面吗?你能发布整个HTML代码吗?这样我就可以检查你是否正确加载了API?它没有公共页面,但我一回到家就会提供其余的页面。Thanksgoogle.com/jsapi“>google.load('visualization'、'1.0'、{'packages':['corechart、geochart、gauge、timeline']});您加载的包是错误的。每个包都是字符串数组中的单个字符串;不应将它们集中到一个逗号分隔的字符串中:
['corechart','geochart','gauge','timeline']
您没有发布如何调用
cargarMapa
函数,因此您还应该检查以确保只有在API完成加载后才调用它(通常在google loader的回调处理程序中调用draw函数)。
google.setOnLoadCallback(init);