Подтвердить что ты не робот

JavaScript, чтобы получить количество строк таблицы HTML

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

4b9b3361

Ответ 1

В принципе:

var rows = document.getElementById(tableId).getElementsByTagName("tr").length;

Или, если между ними есть <tbody>,

var rows = document.getElementById(tableId).getElementsByTagName("tbody")[0].getElementsByTagName("tr").length;

Ответ 2

Вы можете использовать свойство .rows и проверить его .length, например:

var rowCount = document.getElementById('myTableID').rows.length;

Ответ 3

$('tableName').find('tr').length

Ответ 4

Это еще один вариант, использующий 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>

Ответ 5

Если таблица имеет 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;

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