我正在尝试在谷歌地图上加载一个 kml,但我做不到。我在单击事件后加载 kml,然后调用包含 url 的函数:
function LoadRoute(latlng, param1, param2, param3) {
var georssLayer = new google.maps.KmlLayer('http://myserver.net/kmls/file.asp?id='+param1+'&date='+param2+' 00:00:00&EndDate='+param3+' 23:59:59');
georssLayer.setMap(map);
}
上面的代码不加载 kml,但另一方面,如果我加载直接下载的同一个文件,它可以工作,我的意思是,像这样:
function LoadRoute(latlng, param1, param2, param3) {
var georssLayer = new google.maps.KmlLayer('http://myserver.net/kmls/file.kml');
georssLayer.setMap(map);
}
有谁知道发生了什么?我认为这与参数语法有关。无论如何,如果我创建另一个包含上述 url 的函数来检查它是否可以通过 url 访问,它也可以工作。为了检查它,我打开一个新的选项卡窗口来查看 url 格式是否正确,结果是文件已下载。
function open_in_new_tab(latlng, param1, param2, param3)
{
window.open('http://myserver.net/kmls/file.asp?id='+param1+'&date='+param2+' 00:00:00&EndDate='+param3+' 23:59:59', '_blank');
window.focus();
}