HTMLTableElement: phương thức insertRow()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Phương thức insertRow() của giao diện HTMLTableElement chèn một hàng mới (<tr>) vào một <table> đã cho và trả về tham chiếu đến hàng mới.

Nếu một bảng có nhiều phần tử <tbody>, theo mặc định hàng mới sẽ được chèn vào <tbody> cuối cùng. Để chèn hàng vào một phần cụ thể, hãy dùng HTMLTableSectionElement.insertRow()

Note: insertRow() chèn hàng trực tiếp vào bảng. Hàng không cần được thêm riêng lẻ như trường hợp khi dùng Document.createElement() để tạo phần tử <tr> mới.

Cú pháp

js
insertRow()
insertRow(index)

HTMLTableElement là tham chiếu đến phần tử <table> HTML.

Tham số

index Optional

Chỉ số hàng của hàng mới. Nếu index-1 hoặc bằng số lượng hàng, hàng sẽ được thêm vào cuối cùng. Nếu bỏ qua index, giá trị mặc định là -1.

Giá trị trả về

Một HTMLTableRowElement tham chiếu đến hàng mới.

Ngoại lệ

IndexSizeError DOMException

Được ném nếu index lớn hơn số lượng hàng.

Ví dụ

Ví dụ này dùng insertRow(-1) để thêm một hàng mới vào cuối bảng.

Sau đó chúng ta dùng HTMLTableRowElement.insertCell() để chèn một ô mới vào hàng mới. (Để HTML hợp lệ, một <tr> phải có ít nhất một phần tử <td>.) Cuối cùng, chúng ta thêm một số văn bản vào ô bằng Document.createTextNode()Node.appendChild().

HTML

html
<table id="my-table">
  <tbody>
    <tr>
      <td>Row 1</td>
    </tr>
    <tr>
      <td>Row 2</td>
    </tr>
    <tr>
      <td>Row 3</td>
    </tr>
  </tbody>
</table>

JavaScript

js
function addRow(tableID) {
  // Get a reference to the table
  let tableRef = document.getElementById(tableID);

  // Insert a row at the end of the table
  let newRow = tableRef.insertRow(-1);

  // Insert a cell in the row at index 0
  let newCell = newRow.insertCell(0);

  // Append a text node to the cell
  let newText = document.createTextNode("New bottom row");
  newCell.appendChild(newText);
}

// Call addRow() with the table's ID
addRow("my-table");

Kết quả

Đặc tả kỹ thuật

Specification
HTML
# dom-table-insertrow-dev

Tương thích trình duyệt

Xem thêm