Я новичок в Javascript и надеюсь, что кто-то здесь поможет мне в этом.
У меня есть HTML-страница со таблицей на ней и хотелось бы использовать JS для динамического добавления строк с определенным контентом в тело таблицы.
До сих пор у меня есть приведенный ниже код, который здесь сокращен (в действительности больше строк и столбцов и т.д.), что вызывает у меня следующие проблемы:
- Когда я запустил это, он вставляет динамический HTML над таблицей вместо внутри тела таблицы.
- Он не применяет к нему никаких стилей (которые определяются классами в моем CSS), поэтому он просто показывает содержимое ячеек без применения границы или ширины столбцов и т.д. Должен ли я как-то сказать это он также должен применять стили CSS к этому?
- Кроме того, мне было интересно, есть ли способ, который в первой переменной I не нужно перечислить все номера отдельно, а вместо этого просто напишите первый (1) и последний (5) номер серии, поскольку они просто просты последовательности, такие как 1, 2, 3, 4, 5.
Может кто-нибудь сказать мне, что я делаю неправильно здесь?
Мой JS:
$('#btnStart').on('click', function(){
var cols = [1, 2, 3, 4, 5];
var tbody = '';
var i;
for (i = 0; i < cols.length; i++) {
tbody += cols[i] + "<tr> \
<td class='td col1'>1</td> \
<td class='td col2'>2</td> \
<td class='td col3'><div contenteditable='true' class='editable'></div></td> \
</tr>";
}
$('#bodyCal').html(tbody);
});
Мой HTML:
<table class="tblCal">
<colgroup>
<col class="col1" />
<col class="col2" />
<col class="col3" />
</colgroup>
<thead>
<tr>
<th colspan="3" class="th th2">Col 1</th>
</tr>
</thead>
<tbody>
<div id="bodyCal"></div>
</tbody>
</table>