1

ここで私が間違っていることを誰かに教えてもらえますか? ESPN API を使用して JSON オブジェクトを取得していますが、HTML ページの DIV に表示できません。

私のjQuery

$.ajax({
    type: "GET",
    dataType: "json",
    data: " ",
    url: 'http://api.espn.com/v1/sports/basketball/nba/teams/16?enable=stats,leaders&seasontype=2&_accept=text/json&apikey=XXXXX2457896',
    success: function(data) {
      $('#result').html(data);
      console.log('Load was performed.');
    }
});

返された JSON

{
  "スポーツ": [
    {
      「名前」:「バスケットボール」、
      "ID": 40,
      "リーグ": [
        {
          "ID": 46,
          "グループID": 7,
          "name": "National Basketball Association",
          "略語": "NBA",
          "チーム": [
            {
              "ID": 16,
              "場所": "ミネソタ",
              "名前": "ティンバーウルブズ",
              "略語": "MIN",
              "色": "0E3764",
              "リンク": {
                "API": {
                  "チーム": {
                    "href": "http://api.espn.com/v1/sports/basketball/nba/teams/16"
                  }、
                  "ニュース": {
                    "href": "http://api.espn.com/v1/sports/basketball/nba/teams/16/news"
                  }、
                  "ノート": {
                    "href": "http://api.espn.com/v1/sports/basketball/nba/teams/16/news/notes"
                  }
                }、
                "ウェブ": {
                  "チーム": {
                    "href": "http://espn.go.com/nba/team/_/name/min/minnesota-timberwolves?ex_cid=espnapi_public"
                  }
                }、
                "モバイル": {
                  "チーム": {
                    "href": "http://m.espn.go.com/nba/clubhouse?teamId=16&ex_cid=espnapi_public"
                  }
                }
              }
            }
          ]
        }
      ]
    }
  ]、
  "resultsOffset": 0,
  "resultsLimit": 50,
  "resultsCount": 1,
  "タイムスタンプ": "2012-07-03T16:33:07Z",
  "ステータス": "成功"
}

リクエストは正常に機能します。.html()HTML ページにデータを表示する方法がわかりません。プロパティを使用するだけでよいと思っていましたが、何か不足しているに違いありません。

ご協力いただきありがとうございます..

4

3 に答える 3

5

これがjsfiddleです。

JSONを取得するJavaScriptの下部を見てください。次に、ドット表記を使用してオブジェクトをトラバースし、必要な情報を取得して出力します。

data.sports[0].leagues[0].teams[0].links.apiこれはあなたがしなければならないようなことです

$.getJSON('/sports', function(data) {

    var links = data.sports[0].leagues[0].teams[0].links.api

    for(var key in links) {

        $('body').append('<a href="'+ links[key].href +'">'+ links[key].href +'</a><br />');          

    }                 

});

[0]JSONで配列を使用したため、これが使用されます。

于 2012-07-03T17:55:44.763 に答える
5

jsonを<pre></pre>ブロックでラップし、それをページに出力します

于 2012-07-03T16:44:03.000 に答える
0

data.sports[0].leagues[0].teams[0].links.api

これはあなたがする必要があることの一種です

$.getJSON('/sports', function(data) {

    var links = data.sports[0].leagues[0].teams[0].links.api

    for(var key in links) {

        $('body').append('<a href="'+ links[key].href +'">'+ links[key].href +'</a><br />');          

    }
}
于 2016-04-11T07:32:35.410 に答える