2015-02-23 35 views
0

我是新来的Javascript/jQuery和我需要一些帮助添加一个头到我的表。我从一个JSON数组中获取数据。这是我现在的代码。添加表头到JSON表

function jsonTable (ChartNum, divclass) { 
"use strict"; 
var output = JSON.parse(document.getElementById(ChartNum).innerHTML); 
var table = $('<table></table>'); 
for (var i=0; i < output.length; i++) { 
    var tr = $('<tr></tr>'); 
for (var key in output[i]) { 
    var td = $('<td></td>'); 
    td.attr('class', key); 
    td.text(output[i][key]); 
    tr.append(td); 
} 
table.append(tr); 
} 
$(divclass).append(table); 
} 


jsonTable('pdfChart1', '#pdfTable1'); 

任何帮助将非常感激。谢谢,

回答

0

试试这个:

function jsonTable (ChartNum, divclass) {"use strict"; 
var output = JSON.parse(document.getElementById(ChartNum).innerHTML); 
var table = $('<table></table>'); 
var trHeader = $('var table = $('<tr><th>Column1</th><th>Column2</th> <th>ColumnsN</th></tr>'); 
table.append(trHeader); 
for (var i=0; i < output.length; i++) { 
    var tr = $('<tr></tr>'); 
for (var key in output[i]) { 
var td = $('<td></td>'); 
td.attr('class', key); 
td.text(output[i][key]); 
tr.append(td); 
} 
table.append(tr); 
} 
$(divclass).append(table); 
} 

jsonTable('pdfChart1', '#pdfTable1'); 

我添加变量trHeader在这里你可以添加你列的名字,当然如果你的列始终是相同的,这只会工作。或者你可以得到另一个带有列名的json,并迭代它来构建trHeader,就像你构建tds的方式一样。