0

このコードを使用すると、すべての情報が 1 列だけに表示されます。また、Google Chrome で確認すると、<tbody>table.innerHTML に追加されたタグが多数あります。

http://puu.sh/4oLmM.png

content[i]ヘッダーとそれぞれを水平に表示するようにするにはどうすればよいですか?

<table id="table1" border=\"5\" cellpadding=\"10\">

<script>
    var table = document.getElementById('table1');
    table.innerHTML = '';

    var header = ['Method','Gp/Exp','Exp/H']

    var content = [
        ['Kill',1,100],
        ['Die',42,1222],
        ['Yo',1,1245]       
    ]


    //Header
    table.innerHTML += '<tr>';
    for(var i in header){
        table.innerHTML += '<th>' + header[i] + '</th>';
    }
    table.innerHTML += '</tr>';

    //Content
    for(var i in content){
        table.innerHTML += '<tr>';
        for(var j in content[i]){
            table.innerHTML += '<td>' + content[i][j] + '</td>';
        }
        table.innerHTML += '</tr>';
    }
 </script>
4

1 に答える 1

2

私はこれがイアンが意味したことだと思います:

var html = '<tr>';

for(var i in header){
    html += '<th>' + header[i] + '</th>';
}

html += '</tr>';

for(var i in content){
    html += '<tr>';
    for(var j in content[i]){
        html += '<td>' + content[i][j] + '</td>';
    }
    html += '</tr>';
}

table.innerHTML = html;

あなたが行った方法では、不適切な形式の HTML を要素に追加しています。全体的な文字列は問題ありませんが、私の推測では、table.innerHTML +=あなたが .

于 2013-09-11T18:02:35.353 に答える