サーバーからjsonファイルを取得しようとしています。これまでは、常に json ファイルが必要でした。それは ajax によって取得され、サーバー内の php ファイルが json ファイルを作成していました。
この構造のjsonファイル(X.json)はありません:
{
"zona": [
{
"zona1": [
{
"lon": "a",
"lat": "b"
},
{
"lon": "aa",
"lat": "bb"
},
{
"lon": "aaa",
"lat": "bbb"
},
{
"lon": "aaaa",
"lat": "bbbb"
}
]
},
{
"zona2": [
{
"lon": "c",
"lat": "d"
},
{
"lon": "cc",
"lat": "dd"
},
{
"lon": "ccc",
"lat": "ddd"
},
{
"lon": "cccc",
"lat": "dddd"
},
{
"lon": "ccccc",
"lat": "ddddd"
}
]
}
]
}
同じ方法でファイルを取得しようとしても、何も取得できませんでした。javascriptファイルのようにWebページを読み込んだときにファイルを追加できるのではないかと思います。または、おそらくjsonpを使用しますが、試してみましたが、悪い答えが得られました。
json の試行として、次を使用しました。
$.ajax({
url: 'localhost/open/listaPuntosZona.json',
type: 'GET',
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "jsonp",
jsonp: "callback",
jsonpCallback: "jsonpCallbackfunction",
error: function () {
alert("Error in Jsonp");
}
});
function jsonpCallbackfunction(responseData) {
alert(responseData);
}
また、jsonファイルを次のようにラップしました: callback( jsonfile code)
また、この他の2つの試行:
$.ajax({
url: 'localhost/open/listaPuntosZona.json',
type: 'get',
error: function(data){ },
complete: function(data){
data=jQuery.parseJSON(data); //do something with data
alert(data.zona.zona1.length);
}
});
$.getJSON('localhost/open/listaPuntosZona.json',function(jsonData){
alert("hola");
alert(jsonData);
});
lampp を使用して Web ページをテストしています。
何かを変更する必要がありますか? 過去にjsonpを使用しましたが、今何が間違っているのかわかりません。