У меня есть функция JavaScript, которая создает таблицу с 3 строками 2 ячейками.
Может ли кто-нибудь сказать мне, как я могу создать приведенную ниже таблицу, используя мою функцию (мне нужно сделать это для моей ситуации)?
Вот мой код javascript и html, приведенный ниже:
function tableCreate() {
//body reference
var body = document.getElementsByTagName("body")[0];
// create elements <table> and a <tbody>
var tbl = document.createElement("table");
var tblBody = document.createElement("tbody");
// cells creation
for (var j = 0; j <= 2; j++) {
// table row creation
var row = document.createElement("tr");
for (var i = 0; i < 2; i++) {
// create element <td> and text node
//Make text node the contents of <td> element
// put <td> at end of the table row
var cell = document.createElement("td");
var cellText = document.createTextNode("cell is row " + j + ", column " + i);
cell.appendChild(cellText);
row.appendChild(cell);
}
//row added to end of table body
tblBody.appendChild(row);
}
// append the <tbody> inside the <table>
tbl.appendChild(tblBody);
// put <table> in the <body>
body.appendChild(tbl);
// tbl border attribute to
tbl.setAttribute("border", "2");
}
<table width="100%" border="1">
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td rowspan="2"> </td>
</tr>
<tr>
<td> </td>
</tr>
</table>
javascript
html-table
Мэнни Фицджеральд
источник
источник
Чуть более короткий код с использованием
insertRow
иinsertCell
:Кроме того, здесь не используются некоторые «плохие практики», такие как установка
border
атрибута вместо использования CSS, и он обращается кbody
сквозному каналуdocument.body
вместоdocument.getElementsByTagName('body')[0]
;источник
источник
источник
источник
Надеюсь, вы найдете это полезным.
HTML:
JAVASCRIPT:
источник
Может не решить проблему, описанную в этом конкретном вопросе, но может быть полезен людям, которые хотят создавать таблицы из массива объектов:
источник
источник
Я написал версию, которая может динамически анализировать список объектов для создания таблицы в виде строки. Я разделил его на три функции для записи столбцов заголовка, строк тела и сшивания всего этого вместе. Я экспортировал как строку для использования на сервере. В моем коде используются строки шаблона чтобы все было элегантно.
Если вы хотите добавить стиль (например, bootstrap), это можно сделать, добавив больше HTML в файлы
HEAD_PREFIX
иHEAD_SUFFIX
.Вот пример использования:
источник
источник
Вот как пройти через объект javascript и поместить данные в таблицу, код изменен на основе ответа @ Vanuan.
источник
источник