0

json のすべての要素をリストに表示しようとしています。

すべてのデータを含む var "json" があります。

私がまさに望んでいるのは、次のようなデータを表示することです:

   <ul>
     <li>title + "of the first element"</li>
     <li>title + "of the second element"</li>
     <li>title + "of the third element"</li>
   </ul>

単純な「for」で何かを試すたびに、最後の要素しか表示されません。

私が持っていた最も近い解決策は、私が思うにこれでした:

function displayJson(){

    $.each(json, function(key, value) {
        $(this).html("<li>" + json[key].title + "</li>");
     });

}

私は初心者です。

4

1 に答える 1

1

あなたが与えている関数内では、DOM要素ではなく、オブジェクトのエントリの値になる$.eachため、そのように出力を生成することはできません。thisjson

それぞれがプロパティjsonを持つオブジェクトを含むオブジェクトを参照すると仮定すると、次のようになります。title

var $ul = $("some selector for the list");
var json = /*...wherever you're getting the object from... */;
displayJson($ul, json);

function displayJson($ul, json) {
    $ul.empty(); // If it might have something in it
    $.each(json, function(key, value) {
        $ul.append($("<li>").html(value.title));
    });
}
于 2013-11-03T12:04:06.010 に答える