javascript - 如何使用javascript格式化具有相同类的表列中的数据

标签 javascript

我在 foreach 循环中有一些表行,其中有一些具有相同类的列,我的问题是如何将该列中的每个数据格式化为 ###,### (使用逗号格式化数字) JavaScript?

这是我的表结构的示例:

    <tbody id="binder">
<?php foreach () { ?>        
        <tr id="data">
            <td class="sum">400000</td>

            <td class="sum">500000</td>
            <td class="sum">500000</td>
            <td class="sum">0</td>
            <td class="sum">0</td>

            <td class="sum">500000</td>
            <td class="sum">500000</td>
            <td class="sum">0</td>
            <td class="sum">0</td>

            <td class="sum">500000</td>
            <td class="sum">500000</td>
            <td class="sum">0</td>
            <td class="sum">0</td>

            <td class="sum">500000</td>
            <td class="sum">500000</td>
            <td class="sum">0</td>
            <td class="sum">0</td>

            <td class="sum">500000</td>
            <td class="sum">500000</td>
            <td class="sum">0</td>
            <td class="sum">0</td>

            <td class="sum">500000</td>
            <td class="sum">500000</td>
            <td class="sum">0</td>
            <td class="sum">0</td>
        </tr>
<?php } ?>
    </tbody>

最佳答案

您可以获取具有特定类名的所有元素,然后格式化其innerHTML。下面是一个工作片段。

var allTds = document.getElementsByClassName("sum");

for (var i = 0; i < allTds.length; i++) {

  allTds[i].innerHTML = allTds[i].innerHTML.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}
td{
   border:1px solid;
  }
<table>
  <tbody id="binder">
    <tr id="data">
      <td class="sum">400000</td>

      <td class="sum">500000</td>
      <td class="sum">500000</td>
      <td class="sum">0</td>
      <td class="sum">0</td>

      <td class="sum">500000</td>
      <td class="sum">500000</td>
      <td class="sum">0</td>
      <td class="sum">0</td>

      <td class="sum">500000</td>
      <td class="sum">500000</td>
      <td class="sum">0</td>
      <td class="sum">0</td>

      <td class="sum">500000</td>
      <td class="sum">500000</td>
      <td class="sum">0</td>
      <td class="sum">0</td>

      <td class="sum">500000</td>
      <td class="sum">500000</td>
      <td class="sum">0</td>
      <td class="sum">0</td>

      <td class="sum">500000</td>
      <td class="sum">500000</td>
      <td class="sum">0</td>
      <td class="sum">0</td>
    </tr>
  </tbody>
</table>

取自此答案的正则表达式引用。 https://stackoverflow.com/a/2901298/2592042

关于javascript - 如何使用javascript格式化具有相同类的表列中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36619114/

相关文章:

javascript - 如何使用 jquery 添加或删除局部 View Asp.net mvc?

javascript - jQuery:如何识别 ID 包含点的元素?

未找到外部文件中的 Javascript 函数

javascript - bootstrap datetimepicker 与数据表 jquery 插件冲突

javascript - 使用CSS淡入淡出的导航文本

javascript - 从 Javascript 中的 ISO 代码获取国家名称

javascript - Jquery a href onclick to controller without reload page

javascript - 我怎样才能使用 window.alert();但不显示隐藏元素?

javascript - 使用 javascript 将 DIV 添加到弹出窗口

javascript - 在 Javascript 中寻找多维数组中的匹配项