我在下面包含了脚本的最后部分,其中我尝试使用 Ajax 回调函数将 JSON 文件放入网站中。当我检查页面时,我发现 JSON 文件格式不正确,而且我似乎找不到答案。该网页也只是显示 JSON 文件是“未定义”。
function debugCallback(response){
var mydata;
$("#mydiv").append('GeoJSON data: ' + JSON.stringify(mydata));
};
function debugAjax(){
var mydata;
$.ajax("data/MegaCities.GeoJSON", {
dataType: "json",
success: function(response){
//mydata = response;
debugCallback(mydata);
}
});
$("#mydiv").append('<br>GeoJSON data:<br>' + JSON.stringify(mydata));
};
//$("#mydiv").append('GeoJSON data: ' + JSON.stringify(mydata));
if(typeof mydata === 'undefined') {
console.log("undefined data")
} else {
console.log("not undefined")
}
$(document).ready(debugAjax());
最佳答案
避免定义多个函数并尝试仅使用它:
$(document).ready(function(){
$.ajax("data/MegaCities.GeoJSON", {
dataType: "json",
success: function(response){
$("#mydiv").append('<br>GeoJSON data:<br>' + JSON.stringify(response));
}
});
});
请注意,在我们从 ajax 调用获取响应/数据后,我们将继续格式化为 JSON。
关于javascript - 控制台中出现 GeoJson "Not Well Formed"消息,并且显示为未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35230417/