我嘗試動態構建HTML表格是徒勞的。 代碼工作,但它不輸出我所需要的。 只有2我的JSON輸出中的屬性:location
和completed_on
非但沒有這樣的:如何使用來自AJAX調用的JSON數據構建表?
+-------------------+---------------------+
| Location | Completed on |
+-------------------+---------------------+
| 10 Duskwood Dr. | 2015-07-06 14:10:42 |
| 2 Booty Bay Blvd. | 2015-07-09 13:44:38 |
+-------------------+---------------------+
代碼顯示了這一點(沒有THEAD可見):
[
{
"
l
o
c
a
...
]
... prints the whole JSON character by character inside many <td> tags...
這是一個典型的例子JSON數據我必須使用:
[{"location":"10 Duskwood Dr.","completed_on":"2015-07-06 14:10:42"},
{"location":"2 Booty Bay Blvd.","completed_on":"2015-07-09 13:44:38"}]
這是表格標記我硬編碼到HTML和更新使用JSON:
<table id="completed_locations" class="table table-striped">
<thead>
<tr>
<th>Location</th>
<th>Completed on</th>
</tr>
</thead>
<tbody>
// JSON data goes here
</tbody>
</table>
我用這個代碼來構建<tr>
和<td>
:
// this is called within success of ajax to build table
var oldTable = document.getElementById('completed_locations'),
newTable = oldTable.cloneNode();
for(var i = 0; i < output.length; i++){
var tr = document.createElement('tr');
for(var j = 0; j < output[i].length; j++){
var td = document.createElement('td');
td.appendChild(document.createTextNode(output[i][j]));
tr.appendChild(td);
}
newTable.appendChild(tr);
}
oldTable.parentNode.replaceChild(newTable, oldTable);
Cerbrus有已經指出你的第一個問題(你有一個JSON字符串,你需要解析它來獲得實際的JavaScript數組)。接下來你需要修正的是''元素的創建,如果你有一個對象數組,而不是一個數組數組,那麼這個元素看起來是錯誤的。 –