2016-05-31 7 views
0

JSONを使用して質問ベースのゲームレイアウトを構成しようとしています。各質問にID識別子を追加する方が良いか、各質問を通じてIDの識別子を組み込むことができますか?この機能は、ユーザーが最初に質問をクリックしたときにサブクラスが次のスライドに読み込まれるときに発生します。 ありがとう質問のためのJSON配列のフォーマット

私はそれができると思う2つの方法。

バージョン1:

"question": { 
    "id": "0", 
    "name": "Incentive Trip", 
    "subQuestion": { 
     "name": "Bond Up With Clients", 
     "subsubQuestion": { 
      "1,421": "Experiencing Adventures", 
      "2,284": "Immersing Into Culture", 
      "3,394": "Overcoming Challenges" 
     }, 
     "name": "Increase Loyalty", 
     "subsubQuestion": { 
      "1,212": "Adding Value", 
      "2,930": "Making Difference", 
      "3,489": "Starting VIP club" 
     }, 
     "name": "Reward Team", 
     "subsubQuestion ": { 
      "1,329": "Being A Tourist", 
      "2,586": "Enjoying Sunshine", 
      "3,498": "Surprising Colleagues" 
     } 
    }, 
}, 

バージョン2 - ノー識別子、ちょうどネストされた:

"Marketing Event" : { 
    "Encourage Relationship": { 
     "1,398": "Knitting Web", 
     "2,59": "Rewarding Favourites", 
     "3,378": "Top Hatting" 
    }, 
    "Increase Awareness": { 
     "1,102": "Enjoying The Vibe", 
     "2,495": "Interacting Through Brand", 
     "3,697": "Standing Out" 
    }, 
    "Launch Product": { 
     "1,287": "Educating Masters", 
     "2,495": "Shocking Audience", 
     "3,394": "Steering Wheel" 
    } 
}, 
+0

jsオブジェクトに変換しますか? – user489872

+0

質問を最初にループして、それをli値に割り当て、次のサブ質問にロードするのに使用する –

答えて

1

ソリューション1つの

チェックthis答え。オブジェクトのプロパティは保証された順序ではありません。したがって、ユーザーが実際に次の質問を受け取るようにするには、IDを必ず追加する必要があります。配列やオブジェクトをアップミキシング混合について

ソリューション2

何?あなたのIDは配列インデックスであり、順序は保証されています(hereを参照)。

[ 
    "Marketing Event" : { 
     "Encourage Relationship": { 
      "1,398": "Knitting Web", 
      "2,59": "Rewarding Favourites", 
      "3,378": "Top Hatting" 
     }, 
     "Increase Awareness": { 
      "1,102": "Enjoying The Vibe", 
      "2,495": "Interacting Through Brand", 
      "3,697": "Standing Out" 
     }, 
     "Launch Product": { 
      "1,287": "Educating Masters", 
      "2,495": "Shocking Audience", 
      "3,394": "Steering Wheel" 
     } 
    }, 
    "Another Event" : { 
     "Another Relationship": { 
      "1,398": "Knitting Web", 
      "2,59": "Rewarding Favourites", 
      "3,378": "Top Hatting" 
     }, 
     "Another Awareness": { 
      "1,102": "Enjoying The Vibe", 
      "2,495": "Interacting Through Brand", 
      "3,697": "Standing Out" 
     }, 
     "Another Product": { 
      "1,287": "Educating Masters", 
      "2,495": "Shocking Audience", 
      "3,394": "Steering Wheel" 
     } 
    } 
] 
+0

2番目のソリューションを使用すると、データをループするときにオブジェクト番号が返されないという問題があります。 $(data).each(function(i、val){ console.log(i); }); –

+0

しかし、あなたのオブジェクトIDのカウンターではありませんか?最初の要素は0、2番目の要素は1と続きます。あなたが何か誤解を持っているかどうかはわかりません。それ以上説明できますか? –

+0

私は自分自身でJSON配列を構築していますので、目的の結果を返すのが最も簡単な方法です。理想的には、liにid値を代入してから、フィルタを使用して次の質問にロードすることができます。 –

関連する問題