如何使用 JavaScript 動態地將 id 插入到表格元素中?


在本文中,我們將學習如何使用 JavaScript 和 setAttribute API 動態地將 ID 插入到表格元素中。

在 Web 開發中,動態地將 ID 插入到 HTML 表格元素中是一種很有用的技巧,當我們需要唯一地識別和操作特定的行或單元格時,它就派上用場了。透過程式設計方式為表格元素分配 ID,我們可以在訪問和修改表格內容方面獲得更多控制和靈活性。

讓我們透過一些示例來了解如何實現這一點。

示例 1

在這個示例中,我們透過計算可用的總行數並將該計數追加到一個空字串來為表格行生成一個隨機 ID。

檔名:index.html

<html lang="en">
   <head>
      <title>How to dynamically insert id into table element using JavaScript?</title>
   </head>
   <body>
      <h3>How to dynamically insert id into table element using JavaScript?</h3>
      <table id="myTable">
         <tr>
            <th>Row</th>
            <th>Data</th>
         </tr>
      </table>
      <button onclick="addRow()">Add Row</button>
      <script>
         function addRow() {
            const table = document.getElementById("myTable");
            const row = table.insertRow();
            const rowId = "" + (table.rows.length - 1); // Generate a unique ID
            row.id = rowId; // Set the ID of the row

            // Add cells to the new row
            const cell1 = row.insertCell(0);
            const cell2 = row.insertCell(1);

            // Insert content into cells
            cell1.innerHTML = "Row " + (table.rows.length - 1);
            cell2.innerHTML = "Data " + (table.rows.length - 1);
         }
      </script>
   </body>
</html>

示例 2

在這個示例中,我們將遵循上述程式碼模式,並使用三種不同的方法為表格單元格生成隨機 ID,這些方法分別使用 classList 方法、classList 物件和 dataset 物件的 id 屬性。

檔名:index.html

<html lang="en">
   <head>
      <title>
         How to dynamically insert id into table element using JavaScript?
      </title>
   </head>
   <body>
      <h3>How to dynamically insert id into table element using JavaScript?</h3>
      <table id="myTable">
         <tr>
            <th>Row</th>
            <th>Data</th>
         </tr>
      </table>
      <button onclick="addRowUsingObj()">Add Row Using classList object</button>
      <button onclick="addRowUsingMethod()">
         Add Row Using classList method
      </button>
      <button onclick="addRowUsingId()">Add Row Using the id property</button>
      <script>
         const table = document.getElementById("myTable");

         function addRowUsingObj() {
            // Example 1: Using classList object
            const row1 = table.insertRow();
            row1.classList.add("custom-row");

            // Insert content into cells
            const cell1 = row1.insertCell();
            const cell2 = row1.insertCell();
            cell1.innerHTML = "Row " + (table.rows.length - 1);
            cell2.innerHTML = "Data " + (table.rows.length - 1);
         }
 
         function addRowUsingMethod() {
            // Example 2: Using classList method
            const row3 = table.insertRow();
            row3.classList.add("row-highlight");

            // Insert content into cells
            const cell1 = row3.insertCell();
            const cell2 = row3.insertCell();
            cell1.innerHTML = "Row " + (table.rows.length - 1);
            cell2.innerHTML = "Data " + (table.rows.length - 1);
         }

         function addRowUsingId() {
            // Example 3: Using the id property of the dataset object
            const row4 = table.insertRow();
            const rowId = "row-" + (table.rows.length - 1); // Generate a unique ID
            row4.dataset.id = rowId; // Set the ID of the row

            // Insert content into cells
            const cell1 = row4.insertCell();
            const cell2 = row4.insertCell();
            cell1.innerHTML = "Row " + (table.rows.length - 1);
            cell2.innerHTML = "Data " + (table.rows.length - 1);
            // Add more cells and content for the other examples if needed
         }
      </script>
   </body>
</html>

結論

總之,使用 JavaScript 動態地將 ID 插入到表格元素中,可以有效地操作和互動表格中的特定元素。在提供的示例中,我們學習瞭如何動態地將 ID 插入到表格行和單元格中。透過利用 JavaScript 方法(如 insertRow、insertCell)並操作 id 屬性,我們生成了唯一的 ID 並將其與相應的表格元素關聯起來。

更新於: 2023年8月3日

1K+ 次瀏覽

啟動你的 職業生涯

透過完成課程獲得認證

立即開始
廣告