2

私はこの配列テレビを持っています。ループ for でこの配列を読み取ると、最後のアイテムが表示されます。この場合は東芝です。テレビのブランドを表示するにはどうすればよいですか??

for (var i=0;i<tv.length;i++){
            $('#item').html(tv[i].Brand)}
<div id='item'></div>

アレイテレビ:

var tv = [{"Name":"TV","Brand":"Samsung"},
{"Name":"TV","Brand":"Toshiba"},
{"Name":"TV","Brand":"LG"}]
4

2 に答える 2

3

問題:要素が 1 つしかなくdiv#item、反復ごとにその値を更新しています。

解決策:要素を動的に作成して追加し、次のように配列内の各項目を表示します。

for (var i=0;i<tv.length;i++){
    $('<div/>').addClass('item').html(tv[i].Brand).appendTo('.container');
}

どこ:

  • itemはクラスです-複数の要素があるため
  • container-アイテムを表示する親要素と見なされます
于 2013-01-27T12:10:48.073 に答える
3

html()反復ごとにコンテンツを上書きします。そのため、最後のコンテンツのみが表示され、他のコンテンツは上書きされます。追加を使用する必要があります:

$('#item').empty();
for (var i=0; i<tv.length; i++){
    $('#item').append(tv[i].Brand);
}
于 2013-01-27T12:10:57.200 に答える