JavaScript для получения количества строк HTML-таблицы

Как получить с JavaScript количество строк HTML table наличие идентификатора и имени?

57
задан 13 February 2015 в 21:20

2 ответа

Если таблица имеет ID:

const tableObject = document.getElementById(tableId);
const rowCount = tableObject[1].childElementCount;

, Если таблица имеет Class:

const tableObject = document.getElementsByClassName(tableClass);
const rowCount = tableObject[1].childElementCount;

, Если таблица имеет Name:

const tableObject = document.getElementsByTagName('table');
const rowCount = tableObject[1].childElementCount;

Примечание: индекс 1 представляет <tbody> тег

1
ответ дан 1 November 2019 в 15:21

Это - другая опция, с помощью JQuery и получая только tbody строки (с данными) и дискредитируя thead/tfoot.

$ (" #tableId> tbody> TR") .length

console.log($("#myTableId > tbody > tr").length);
.demo {
		width:100%;
		height:100%;
		border:1px solid #C0C0C0;
		border-collapse:collapse;
		border-spacing:2px;
		padding:5px;
	}
	.demo caption {
		caption-side:top;
		text-align:center;
	}
	.demo th {
		border:1px solid #C0C0C0;
		padding:5px;
		background:#F0F0F0;
	}
	.demo td {
		border:1px solid #C0C0C0;
		text-align:left;
		padding:5px;
		background:#FFFFFF;
	}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table id="myTableId" class="demo">
	<caption>Table 1</caption>
	<thead>
	<tr>
		<th>Header 1</th>
		<th>Header 2</th>
		<th>Header 3</th>
		<th>Header 4</th>
	</tr>
	</thead>
	<tbody>
	<tr>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
	</tr>
	<tr>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
	</tr>
	<tr>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
	</tr>
	<tr>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
	</tr>
	</tbody>
  <tfoot>
  <tr>
  <td colspan=4 style="background:#F0F0F0">&nbsp; </td>
  </tr>
  </tfoot>
</table>
0
ответ дан 1 November 2019 в 15:21

Другие вопросы по тегам:

Похожие вопросы: