--- title: HTMLTableElement.insertRow() slug: Web/API/HTMLTableElement/insertRow tags: - API - HTML DOM - HTMLTableElement - Method - Reference translation_of: Web/API/HTMLTableElement/insertRow ---
Метод HTMLTableElement.insertRow()
добавляет новую строку в таблицу и возвращает на неё ссылку.
var row = HTMLTableElement.insertRow(optional index = -1);
HTMLTableElement
— ссылка на HTML table элемент.index
— индекс новой строкиrow
присваивается ссылка на новую строку. Ссылка на HTMLTableRowElement.index
равно -1 или количеству строк, то строка добавляется как последняя. Если значение index
превышает количество строк, выбрасывается исключение IndexSizeError. Если аргумент index пропущен, он равен значению по умолчанию — -1.tbody
, то, по умолчанию, новая строка будет добавлена в последний элемент tbody
. Добавить строку в определённый элемент tbody
:var specific_tbody=document.getElementById(tbody_id);
var row=specific_tbody.insertRow(index)
<table id="TableA"> <tr> <td>Old top row</td> </tr> </table> <script type="text/javascript"> function addRow(tableID) { // Get a reference to the table var tableRef = document.getElementById(tableID); // Insert a row in the table at row index 0 var newRow = tableRef.insertRow(0); // Insert a cell in the row at index 0 var newCell = newRow.insertCell(0); // Append a text node to the cell var newText = document.createTextNode('New top row'); newCell.appendChild(newText); } // Call addRow() with the ID of a table addRow('TableA'); </script>
Чтобы быть валидным HTML документом, элемент TR должен содержать хотя бы один TD элемент.
Обратите внимание, что insertRow
добавляет строку непосредственно в таблицу и возвращает ссылку на эту строку. Строку не нужно добавлять отдельно, как в случае с методомdocument.createElement(),
для создания нового TR элемента.
Спецификации | Статус | Комментарии |
---|---|---|
{{SpecName("HTML WHATWG", "tables.html#dom-table-insertrow", "HTMLTableElement.insertRow()")}} | {{Spec2("HTML WHATWG")}} | |
{{SpecName("DOM2 HTML", "html.html#ID-93995626", "HTMLTableElement.insertRow()")}} | {{Spec2("DOM2 HTML")}} | Specifies in more detail where the row is inserted. |
{{SpecName("DOM1", "level-one-html.html#ID-39872903", "HTMLTableElement.insertRow()")}} | {{Spec2("DOM1")}} | Initial definition |
{{Compat("api.HTMLTableElement.insertRow")}}