2013-03-20 137 views
0

我有一個json API密鑰&我想將json數據轉換爲在無序列表中以HTML或php顯示。在html列表中顯示json api數據

這是API密鑰我:http://kippamp.uservoice.com/api/v1/forums/1/suggestions.json?client=qikbghkQYRolFTMvEXg

我可以使用下面的代碼來解析原始JSON數據:

<script> 
$.ajax({ 
    type: 'GET', 
    url: 'http://kippamp.uservoice.com/api/v1/forums/1/suggestions.json?client=qikbghkQYRolFTMvEXg', 
    async: false, 
    jsonpCallback: 'jsonCallback', 
    contentType: "application/json", 
    dataType: 'jsonp', 
    success: function(data) 
    { 
     $('#jsonp-results').html(JSON.stringify(data)); 
     console.log(json); 
    }, 
    error: function(e) 
    { 
     alert(e.message); 
    } 
}); 
</script> 

,但無法解析數據的格式化列出辦法。

有人可以幫助我。

問候。

+0

創建循環和

  • 數據
  • 插入數據.. – 2013-03-20 11:51:13

    +0

    約傑什可以請你能夠expalin的代碼,以創建循環。 我想這樣做,但沒用。 – 2013-03-20 11:57:32

    +0

    參見'dfsq's'答案。 – 2013-03-20 11:59:32

    回答

    4

    只需在循環中呈現您的結果。例如追加他們進入ul容器:

    success: function (data) { 
        var $ul = $('#results'); 
        $.each(data.suggestions, function(i, el) { 
         $ul.append('<li>' + el.formatted_text + '</li>'); 
        }); 
    }, 
    

    http://jsfiddle.net/zvBE3/

    你只需要決定你需要出示你應該使用什麼模板,什麼樣的數據:

    var row = 
        '<li>' + 
         '<h2>' + el.title + '</h2>' + 
         '<div>' + el.formatted_text + '</div>'+ 
        '</li>'; 
    $ul.append(row); 
    

    http://jsfiddle.net/zvBE3/3/

    +1

    感謝一個負載... 你的岩石.. – 2013-03-20 12:03:16

    +0

    你能告訴我一件事請... 我可以控制列表的數量,例如:如果我只需要顯示4或5個項目? – 2013-03-20 12:20:33

    +0

    剛剛檢查了他們的API。您可以使用'per_page'參數控制返回結果的數量。例如:http://jsfiddle.net/zvBE3/4/ – dfsq 2013-03-20 13:32:09

    1

    Ajax請求返回一個對象,您必須通過data.suggestions來創建您的列表。 喜歡的東西:

    $.each(data.suggestions, function(id, suggestion) { 
        $('ul.mylist').append($('<li>'+suggestion.title+'</li>')); 
    });