0

jquery/javascriptでロードしている非常に基本的なjsonファイルがあります。現在、私は自分のデータの一部を警告しようとしています。私が抱えている問題は、JSON ファイル (「カテゴリ」と呼ばれる) に 3 つの主要な項目があるが、何らかの理由で最後の項目しか読み取れないことです。

私の JSON ファイルは次のようになります。

{
"category":{
    "name":"Caribbean Travel",
    "article":{
        "id": "1",
        "title": "",
        "teaser": "",
        "image": "",
        "date": "",
        "map": "",
        "body": ""
    }
},
"category":{
    "name":"European Travel",
    "article":{
        "id": "2",
        "title": "",
        "teaser": "",
        "image": "",
        "date": "",
        "map": "",
        "body": ""
    }
},
"category":{
    "name":"U.S. Travel",
    "article":{
        "id": "3",
        "title": "",
        "teaser": "",
        "image": "",
        "date": "",
        "map": "",
        "body": ""
    }
}

}

json ファイルを呼び出して、次のような情報を警告します。

$(document).ready(function(){
$.getJSON("news.json",
    function(data){
        alert(JSON.stringify(data));
        //alert(data.category.article.id);
    });

});

そのため、データを表示すると、表示されるのは最後のカテゴリ情報 (米国旅行) だけです。上位 2 位までは表示されません。そして、data.category[1] などを使用してそれらを参照することはできません。

ここで私が間違っていることを誰かが知っていますか?

ありがとう

4

2 に答える 2

2

jsonファイルは次のようになります。

[{
    "name": "Caribbean Travel",
    "articles": [{
        "id": "1",
        "title": "",
        "teaser": "",
        "image": "",
        "date": "",
        "map": "",
        "body": ""
    }]
}, {
    "name": "European Travel",
    "articles": [{
        "id": "2",
        "title": "",
        "teaser": "",
        "image": "",
        "date": "",
        "map": "",
        "body": ""
    }]
}, {
    "name": "U.S. Travel",
    "articles": [{
        "id": "3",
        "title": "",
        "teaser": "",
        "image": "",
        "date": "",
        "map": "",
        "body": ""
    }, {
        "id": "4",
        "title": "",
        "teaser": "",
        "image": "",
        "date": "",
        "map": "",
        "body": ""
    }]
}]

data[0]最初のカテゴリ、data[1]2番目のカテゴリなどになります。

alert(data[0].articles[0].id) //alert first category's first article's id
alert(data[2].name) //alert third category's name
alert(data[1].articles[0].body) //alert second category's first article's body
alert(data[2].articles[1].body) //alert third category's second article's body
于 2012-07-17T15:50:16.460 に答える
0
{"category":[
{
    "name":"Caribbean Travel",
    "article":{
        "id": "1",
        "title": "",
        "teaser": "",
        "image": "",
        "date": "",
        "map": "",
        "body": ""
    }
},
{
    "name":"European Travel",
    "article":{
        "id": "2",
        "title": "",
        "teaser": "",
        "image": "",
        "date": "",
        "map": "",
        "body": ""
    }
},
{
    "name":"U.S. Travel",
    "article":{
        "id": "3",
        "title": "",
        "teaser": "",
        "image": "",
        "date": "",
        "map": "",
        "body": ""
    }
}
]
}
于 2012-07-17T15:52:47.813 に答える