コードは次のとおりです。ajax json:ajaxが受け取ったjsonオブジェクトからデータを取得する方法は?ここで
$.ajax({
url: MyURL,
method: 'GET',
processData: true,
contentType: 'application/json;',
dataType: "json",
success: function(data) {
alert("Success data= "+JSON.stringify(data));
var count = Object.keys(data).length;
alert("count = "+count);
result=data[0];
alert("result.CountryName:"+ result.CountryName);
alert("total " + keys.length + " keys: " + keys);
error: function(data) { alert("ajax Error"); },
});
第一のアラートは大丈夫そうですし、提供します: 成功データを= "[{\" COUNTRYNAME \ ":\" フランス\ "\ "通貨\":\" ユーロ"PriceMax \":500.00、\ "PriceStep \":50.00、\ "PriceMin \":100.00}] "
Firebug/network/responseから、同じデータが表示されます(バックスラッシュ! !)
2番目のアラートは107です。明らかに各文字はオブジェクトですか? しかし、http://jsonlint.com/の構文をチェックすると、jsonが正しいです。
最後に、最後のアラートは次のようになります。
何が問題なのですか?
はあなたの助け
は、残念ながら、それは( "データ[COUNTRYNAME]:" +データ[0] [ 'COUNTRYNAME'])結果のアラートを変更しません。 - > undefined alert( "data.CountryName:" + data [0] .CountryName); - > undefined ありがとうDaniel – alvaro562003
データがJSONとして解釈されていないようです。最初に 'JSON.parse(data)'で手動で解析する必要があります。 –