2016-04-14 1 views
0

У меня есть строка таблицы внутри цикла foreach, которые имеют несколько столбцов с одним и тем же классом, мой вопрос в том, как я могу форматировать все данные в этом столбце, ##, ### (номер формата с запятой) в javascript?Как форматировать данные из столбца таблицы с тем же классом с помощью 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> 
+0

можно дублировать http://stackoverflow.com/questions/6134039/format-number-to-always-show-2-decimal-places – Lulylulu

+0

вы неправильно @Lulylulu –

+0

@Muhammad, вы можете посмотреть в 'toLocaleString () 'это означает, что он будет форматироваться запятой для США, но, например, для пробелов для Франции. – Lulylulu

ответ

1

Вы можете получить все элементы с определенным именем класса, а затем отформатировать его 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

+0

ваш код работает как шарм! вот что я имею в виду. спасибо за вашу помощь ... приятно видеть вас здесь. – Scarlet

+0

@MuhammadKhoirulUmam рад, что я могу вам помочь. Счастливое кодирование! –

Смежные вопросы