jsonファイルを使おうとしています。このコードは私のコードで問題なく動作します
console.log(resp);
これはコンソールの結果です
{Result: {…}}
Result:
Code: "00"
city: Array(18)
0: {cityname: "강원도", citycount: "146"}
1: {cityname: "경기도", citycount: "1055"}
2: {cityname: "경상남도", citycount: "303"}
しかし、これは機能しません
console.log(itemNm2);
console.log(dataV);
そして、これはエラーです!
Uncaught TypeError:未定義のプロパティ 'city'を読み取ることができません
また、元のコードには、「city-name」、「city-count」のような変数があります。
しかし、それはうまくいきませんでした。ダッシュのせいだと思いますか?そこでダッシュを削除しました。
どうすればこの問題を解決できますか?ありがとう!
これは私のコード全体です:
$.ajax({
url: 'js/map.json',
type: 'GET',
dataType: 'json',
success: function (resp) {
console.log(resp);
var options = {
toolTip : {
use : {
local : true
},
className : 'tip',
position : {
x : 0,
y : -10
}
},
data: {
data: [
{locname: '', listshrs: ''}
],
localOption: 'locname',
use : 'listshrs'
}
};
var rows = resp.Result[1].City;
if (rows) {
var representativeRow;
for (i = 0; i < 2; i++) {
representativeRow = rows[i];
itemNm2 = representativeRow.cityname;
dataV = representativeRow.citycount;
console.log(itemNm2);
console.log(dataV);
options.data.data.push({locname: itemNm2, listshrs: dataV});
}
korea = webponent.visual.korea.init($(".korea"), style, options);
}
}, error: function (xhr, status, error) {
alert("err")
}
});
これはjsonの例です!
{
"Result": {
"Code": "00",
"City": [
{
"city-name": "강원도",
"city-count": "146"
},
{
"city-name": "경기도",
"city-count": "1055"
}
]
}
}
JSONの例とコードからわかるように、アクセスしようとしていますresp.Result[1].City
がresp.Result
、配列ではありません。の代わりに :
var rows = resp.Result[1].City;
あなたはこれをしなければなりません:
var rows = resp.Result.City;
また、JSONオブジェクトでダッシュを使用する必要がある場合は、CharisTheoの回答を参照してください。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加