Javascript 需要帮助,为谷歌地图多段线构建阵列

Javascript 需要帮助,为谷歌地图多段线构建阵列,javascript,ajax,google-maps,Javascript,Ajax,Google Maps,我的谷歌地图脚本有一些问题。我有一个点击功能,我想画一些多段线。如示例所示,如果预定义数组,效果会很好 来自提要的示例数据。 示例,包含来自示例JSON数据的多段线 var数据=[{“纬度”:“56.31092”,“经度”:“-16.42921”},{“纬度”:“56.21234”,“经度”:“-15.96661”},{“纬度”:“56.13448”,“经度”:“-15.60909”},{“纬度”:“56.03143”,“经度”:“-15.14082”},{“纬度”:“55.94140”,“经

我的谷歌地图脚本有一些问题。我有一个点击功能,我想画一些多段线。如示例所示,如果预定义数组,效果会很好

来自提要的示例数据。

示例,包含来自示例JSON数据的多段线

var数据=[{“纬度”:“56.31092”,“经度”:“-16.42921”},{“纬度”:“56.21234”,“经度”:“-15.96661”},{“纬度”:“56.13448”,“经度”:“-15.60909”},{“纬度”:“56.03143”,“经度”:“-15.14082”},{“纬度”:“55.94140”,“经度”:“-14.82629”},{“纬度”:“55.84064”,“经度”:“-14.52696”},{“纬度”:“55.70499”,“经度”:“-14.12847”},{“纬度”:“55.59654”,“经度”:“-13.81463”},{“纬度”:“55.44813”,“经度”:“-13.39472”},{“纬度”:“55.33556”,“经度”:“-13.07998”},{“纬度”:“55.18547”,“经度”:“-12.66326”},{“纬度”:“55.07176”,“经度”:“-12.35495”},{“纬度”:“54.95175”,“经度”:“12.03340”{“纬度”:“54.78646”,“经度”:6311”},{“纬度”:“54.66027”,“经度”:“-11.26603”},{“纬度”:“54.53276”,“经度”:“-10.93882”},{“纬度”:“54.40428”,“经度”:“-10.61447”},{“纬度”:“54.23939”,“经度”:“-10.20243”},{“纬度”:“54.10884”,“经度”:“-9.87899”},{“纬度”:“53.97564”,“经度”:“9.55623”},{“纬度”:“53.81207经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度:经度“:”-6.50089“},{“纬度”:“52.43410”,“经度”:“-6.08510”},{“纬度”:“52.28496”,“经度”:“-5.76677”},{“纬度”:“52.19034”,“经度”:“-5.40902”},{“纬度”:“52.12901”,“经度”:“-5.03247”},{“纬度”:“52.08278”,“经度”:“-4.63482”},{“纬度”:“52.03945”,“经度”:“-4.27098”},{“纬度”51.9903”,“经度”:{“纬度”:“51.94122”、“经度”:“-3.47960”}、{“纬度”:“51.89047”、“经度”:“-3.08773”}、{“纬度”:“51.84010”、“经度”:“-2.71022”}、{“纬度”:“51.75757”、“经度”:“-2.32244”}、{“纬度”:“51.66486”、“经度”:“-1.98045”}、{“纬度”:“51.57334”、“经度”:“1.64512”}、{“纬度”:“51.50558”、“经度”:“经度”:“-1.33356”}、{“纬度”:“,”经度“:”-1.04251“},{”纬度“:”51.45502“,”经度“:”-0.77477“},{”纬度“:”51.46606“,”经度“:”-0.60582“},{”纬度“:”51.47764“,”经度“:”经度“:”-0.44661“,{”纬度“:”51.47579“,”经度“,”0.47241“,”,{”纬度“:”51.47155“-0.47874”},{“纬度”:“51.47009”,“经度”:-0.47874”},{“纬度”:“51.47044”,“经度”:-0.47716”},{“纬度”:“51.47044”,“经度”:-0.47716”},{“纬度”:“51.47044”,“经度”:-0.47716”},{“纬度”:“51.47044”,“经度”:-0.47716”};
函数初始化(){
map=新建google.maps.map(
document.getElementById(“地图画布”){
中心:新google.maps.LatLng(37.4419,-122.1419),
缩放:13,
mapTypeId:google.maps.mapTypeId.ROADMAP
});
var marker=new google.maps.marker({
职位:{
拉脱维亚:56.31092,
液化天然气:-16.42921
},
地图:地图
});
map.setCenter(marker.getPosition());
google.maps.event.addListener(标记'click',函数(){
//信息打开(地图、标记);
var-coords=[];
//$.get('ajax.php?type=flight_data&callsign='+value.callsign+'&department='+value.planned_depairport+'&arrival='+value.planned_destairport+'',函数(数据){
var FlightPlan坐标=[];
var bounds=new google.maps.LatLngBounds();
$。每个(数据、函数(键、值){
flightPlanCoordinates.push(新的google.maps.LatLng(数据[key]。纬度,数据[key]。经度));
extend(flightPlanCoordinates[flightPlanCoordinates.length-1]);
});
var flightPath=new google.maps.Polyline({
路径:FlightPlan坐标,
测地线:正确,
strokeColor:“#fca000”,
笔划不透明度:1.0,
冲程重量:3
});
映射边界(bounds);
flightPath.setMap(map);
});
}
google.maps.event.addDomListener(窗口“加载”,初始化);
html,
身体,
#地图画布{
身高:95%;
宽度:100%;
边际:0px;
填充:0px
}


你能展示一个ajax数据样本吗?这个问题应该在这个网站上完全独立,以防将来任何外部引用发生变化。我已经用相关数据更新了这个问题。效果很好!非常感谢!我想问一下,在单击新标记时如何清除旧标记? [{"latitude":"56.31092","longitude":"-16.42921"},{"latitude":"56.21234","longitude":"-15.96661"},{"latitude":"51.47044","longitude":"-0.47716"},{"latitude":"51.47044","longitude":"-0.47716"}]

google.maps.event.addListener(marker, 'click', function() {
info.open(map, marker);
var coords = [];
$.get('ajax.php?
type=flight_data&callsign='+value.callsign+'&departure='+value.planned_depairport+'&arrival='+value.planned_destairport+'',function(data){
$.each(data, function(key, value){
});
});

var flightPlanCoordinates = [
new google.maps.LatLng(51.31998, -4.84809),
new google.maps.LatLng(54.78397, -18.80557),
new google.maps.LatLng(55.49340, -36.09961),
new google.maps.LatLng(53.62062, -47.39679),
new google.maps.LatLng(45.37960, -66.45066),
new google.maps.LatLng(44.35434, -68.08823),
new google.maps.LatLng(28.43373, -81.31488)
];

var flightPath = new google.maps.Polyline({
path: flightPlanCoordinates,
geodesic: true,
strokeColor: '#fca000',
strokeOpacity: 1.0,
strokeWeight: 3
});

flightPath.setMap(map);
});