--- 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 |
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | 4 | {{CompatVersionUnknown}} | 3[1] | 5.5 | 10 | 4 |
Feature | Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | {{CompatUnknown}} | {{CompatVersionUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
[1] Начиная с Gecko 20.0 {{geckoRelease("20.0")}} аргумент index опционален и значением по умолчанию является -1 согласно спецификации HTML.