2016-07-25 18 views
1

私はおそらくnoob-ishの質問であなたに来ます。私はクライアント側のサーバーからJSON応答を解析しようとしていますが、実際にはその内部のデータにアクセスできないため、壁に衝突したようです。 JSONのコンテンツは次のとおりです。私はちょうどのような名前が必要ですname:"Topic3"JSONツリーの一番下に移動する方法

'{ 
links: [ ], 
content: [ 
    { 
     links: [ ], 
     content: { 
      name: "Topic3", 
      technology: { 
      name: "Java", 
      technology_id: 1 
      }, 
      topic_id: 3 
     }, 
    id: null 
    }, 
    ], 
    id: null 
}' 

ご協力いただければ幸いです。また、これは私がそれで動作しようとした私のJSコードです。

$.ajax({ 
      type:'GET', 
      dataType: 'json', 
      url: "technologies/"+ option+ "/topics" 
     }).then(function(data) 
     { 
      for(i=0;i<data.content.length;i++) 
      { 
       var topic = document.createElement("button"); 
       var content= (Object.keys(data.content[i])); 
       topic.name= content.content.name; 
       AddTopic.appendChild(topic); 
      } 
     }); 
+0

第2の「conte nt。 " "content.content.name"から – lukkea

+0

これを試してみましたが、これはtopic.name = undefinedを作成します。 – dobri252

+0

@ShubhamKhatriこれはすでにjavascriptオブジェクトですが、jqueryは 'dataType: 'json''を提供するとそれを変換します。 –

答えて

0

ボタンテキストをだから私はあなたを介して反復処理し、使用可能なすべてのトピックを検索する必要があると仮定していinnerHTMLプロパティ

  var topic = document.createElement("button"); 
      var content = data.content[i]; 
      topic.innerHTML = content.content.name; 
      AddTopic.appendChild(topic); 
+0

それは私に "Undefinedのプロパティ名を読み取ることができません"というエラーを与えます – dobri252

0

を使用する設定する - その場合には、私は、これは

$.ajax({ 
 
      type:'GET', 
 
      dataType: 'json', 
 
      url: "technologies/"+ option+ "/topics" 
 
     }).then(function(data) 
 
     { 
 
      for(i of data.content) 
 
      { 
 
       var topic = document.createElement("button"); 
 
       topic.name= i.content.name; 
 
       AddTopic.appendChild(topic); 
 
      } 
 
     });
を動作するはずと信じて

+0

はい、うまくいきました。どうもありがとう! :D – dobri252

関連する問題