亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

通過 JavaScript 更改多個 HTML 表格單元格的最佳方法

通過 JavaScript 更改多個 HTML 表格單元格的最佳方法

躍然一笑 2023-08-18 16:51:54
在 HTML 表中,我必須更改幾個列標題,例如:<th class="myclass">Headline_01</th>應該變成<th class="myclass">Nice Headline 01</th>。作為 javascript 的初學者,我可以使用以下代碼實現此目的:window.onload = function() {    'use strict';    document.body.innerHTML = document.body.innerHTML.replace("Headline_01","Nice Headline 01");    document.body.innerHTML = document.body.innerHTML.replace("Headline_02","Nice Headline 02");    document.body.innerHTML = document.body.innerHTML.replace("Headline_03","Nice Headline 03");}這就是我所擁有的:<table>  <thead>    <tr>      <th class="myClass1">Current unique Headline for myClass1</th>    </tr>    <tr>      <th class="myClass2">Current unique Headline for myClass2</th>    </tr>   ....  </thead>這就是我需要的:<table>  <thead>    <tr>      <th class="myClass1">New unique Headline for myClass1</th>    </tr>    <tr>      <th class="myClass2">New unique Headline for myClass2</th>    </tr>    .....  </thead>我必須更改 20 多個項目,并且總是重復相同的代碼對我來說似乎是錯誤的,我認為這也會導致性能不佳。我應該如何改進我的代碼?感謝您的提示!
查看完整描述

1 回答

?
函數式編程

TA貢獻1807條經驗 獲得超9個贊

班級


const changes = { 

  "myClass1": "New unique Headline for myClass1", 

  "myClass2": "New unique Headline for myClass2" 

};


Object.keys(changes)

  .forEach(key => document.querySelectorAll("table th."+key)

    .forEach(th => th.textContent = changes[key]));

<table>

  <thead>

    <tr>

      <th class="myClass1">Current unique Headline for myClass1</th>

    </tr>

    <tr>

      <th class="myClass2">Current unique Headline for myClass2</th>

    </tr>

  </thead>

內容:


const changes = {

  "Current unique Headline for myClass1": "New unique Headline for myClass1",

  "Current unique Headline for myClass3": "New unique Headline for myClass3"

};


[...document.querySelectorAll("th")]

.forEach(th => {

  const text = changes[th.textContent];

  if (text) th.textContent = text;

});

<table>

  <thead>

    <tr>

      <th class="myClass1">Current unique Headline for myClass1</th>

    </tr>

    <tr>

      <th class="myClass2">Current unique Headline for myClass2</th>

    </tr>

    <tr>

      <th class="myClass3">Current unique Headline for myClass3</th>

    </tr>

  </thead>


查看完整回答
反對 回復 2023-08-18
  • 1 回答
  • 0 關注
  • 159 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號