我需要阅读一个GeoJSON,根据用户的搜索选择一条线,然后在地图上绘制它。直到这一刻,我在下面的代码中进行操作,我走了属性,找到了行并进入变量以使用loadGeoJson
函数在地图上绘制。但该函数需要一个URL,如何使用GeoJSON传递变量?
var onibusLayer = new google.maps.Data();
var linhaSearch ;
var linhaGeom ;
function loadOnibus(){
linhaSearch = $('#linha').val() ;
var url = "/data/onibus.json";
$.ajax({
dataType: "json",
url: url,
data: data,
beforeSend: function(){
$('#loader').show();
},
success:(function(data){
$('#loader').hide();
for (var i = 0; i < data.features.length; i++) {
if (data.features[i].properties.CODLIN == linhaSearch){
linhaGeom = data.features[i];
overlayLine();
break;
}
}
}),
error:(function(data,jqXHR, textStatus, errorThrown){
console.log ("Error load file: " + url +" Status: " + textStatus );
})
});
}
function overlayLine(){
onibusLayer.loadGeoJson(linhaGeom, showLoading(),function(features){
hideLoading();
onibusLayer.setMap(map);
});
}
答案 0 :(得分:1)
使用.addGeoJson
而不是.loadGeoJson