我是Google Maps API的新手,我正在使用localhost。 我希望为用户添加上传其.gpx文件并在Google地图上可视化的功能。
我发现这个AJAX函数在我对.gpx文件进行硬编码时工作正常,但是当我尝试从我的计算机导入文件时,我得到了一个灰色屏幕,然后消失了。
对此问题的任何想法或解决方案都非常欢迎。
提前致谢。
function get_file() {
var fileInput = document.getElementById("file_upload");
var filename = fileInput.value;
var myOptions = {
zoom: 8,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
loadGPXFileIntoGoogleMap(map, filename);
}
function loadGPXFileIntoGoogleMap(map, filename) {
$.ajax({url: filename,
dataType: "xml",
success: function(data) {
var parser = new GPXParser(data, map);
parser.setTrackColour("#ff0000"); // Set the track line colour
parser.setTrackWidth(5); // Set the track line width
parser.setMinTrackPointDelta(0.001); // Set the minimum distance between track points
parser.centerAndZoom(data);
parser.addTrackpointsToMap(); // Add the trackpoints
parser.addWaypointsToMap(); // Add the waypoints
}
});
}
答案 0 :(得分:0)
无法从JavaScript访问文件系统。
这是一个安全问题。要解决您的问题,我只能看到一个选项:您应该具有临时存储用户上载数据的服务器端功能。然后,您可以从服务器加载用户定义的.gpx
文件。