0

私は JSON フィードからの値の表示に取り組んできました。ここで読んだ多くの以前の投稿の助けに大いに感謝しています - メイン配列のオブジェクトのすべての値を書き込む (ブラウザに表示する) ことができます。ただし、配列 > オブジェクト > 配列 > オブジェクト > プロパティ:値構造 (以下のように) に「ネスト」されている「名前」オブジェクトの値の場合。このレベルをうまく操作して表示する方法を見つけるのを手伝ってくれるような親切な人がいるかどうか疑問に思っています.

アイデアをありがとうございました。追加する必要がある JQuery ではなく、標準の JavaScript を使用しています。

var foo=[ 
    {
        "subjects": 
        [
            "A1",
            "SB2"
        ],
        "title": "Box World",
        "first_pub": "2013-12",
        "characters": 
        [
            {
                "name": 
                {
                    "given": "Maxwell",
                    "honourific": "",
                    "family": "Smart"
                },
                "id": "MS34"
            }, 
            {
                "name": 
                {
                    "given": "Samantha",
                    "honourific": "",
                    "family": "Stevens"
                },
                "id": "SS81"
            } // end creators object 2
        ],
        "publisher": "Galactic Publishing"
    },
    {
        "subjects": 
        [
            "A133",
            "PB82"
        ],
        "title": "Octonautica",
        "first_pub": "2010",
        "characters": 
        [
            {
                "name": 
                {
                    "given": "Peso",
                    "honourific": "Doctor",
                    "family": ""
                },
                "id": "MS34"
            },
            {
                "name": 
                {
                    "given": "Barnacle",
                    "honourific": "Captain",
                    "family": ""
                },
                "id": "SS82"
                } 
            ],
        "publisher": "Neptune House"
    }   
]


var obj_set = foo ;

for (var key in obj_set) {
   document.write("\<h3\> Publication " + key + "\<\/h3\>" );
   var obj = obj_set[key];
   document.write("\<ol\>");

   for (var prop in obj) {
      document.write("\<li\>" + prop + " = " + obj[prop] + "\<\/li\>" );
   }
   document.write("\<\/ol\>");

}   
//END MAIN KEY LOOP
4

1 に答える 1