2016-11-07 17 views
1

class="contribution"クラスのすべてのテーブル<td>をフォーマットするには、.toLocaleString();を使用するか、カンマと通貨の書式設定を追加できる同様の方法を使用しますか?パフォーマンスに関連する場合は、テーブルの行数が200を超えることはありません。ここでは、現在のテーブル本体の形式は次のとおりです。テーブル番号の書式設定は?

<tbody> 
    <tr> 
     <td>2009-01-31</td> 
     <td class="contribution">-100000.00</td> 
     <td class="distribution">0.00</td> 
     <td class="nav">0.00</td> 
    </tr> 
    <tr> 
     <td>2013-05-15</td> 
     <td class="contribution">0.00</td> 
     <td class="distribution">56000.00</td> 
     <td class="nav">64000.00</td> 
    </tr> 
    </tbody> 

私は現在動作するようには思えdoesntのこれ、使っていたJavaScriptは、次のとおりです。

$(document).ready(function() { 
    $("td.contribution").toLocaleString('en-US'); 
}) 

それが助け場合は、Webページがロードされたjqueryの3を持っています。

+0

このクラスは、どこか別の列で使用されていますか? –

+0

'toLocaleString'はネイティブです - それは多くのネイティブタイプの文字列、数字、日付などに属します。 – Brian

答えて

4

(書式設定の通貨を使用するように編集された)、これを試してみてください:

$(document).ready(function() { 
 
    $("td.contribution").each(function() { $(this).html(parseFloat($(this).text()).toLocaleString('en-US', {style: 'currency', currency: 'USD'})); }) 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table> 
 
    <tbody> 
 
    <tr> 
 
     <td>2009-01-31</td> 
 
     <td class="contribution">-100000.00</td> 
 
     <td class="distribution">0.00</td> 
 
     <td class="nav">0.00</td> 
 
    </tr> 
 
    <tr> 
 
     <td>2013-05-15</td> 
 
     <td class="contribution">0.00</td> 
 
     <td class="distribution">56000.00</td> 
 
     <td class="nav">64000.00</td> 
 
    </tr> 
 
    </tbody> 
 
</table>

これは内数のロケール形式版とHTMLコンテンツを置き換え、各セルに関数を呼び出します細胞。元のコードでは、セル内のテキストを読み書きしませんでした。

+0

優れています。 toLocaleString( 'en-td.contribution')を使用してUSDとして書式設定することもできました。 – surfearth

-1

これを試すことができますか?

$(document).ready(function() {    
      $("td.contribution").each(function() { 
       $(this).text($(this).text().toLocaleString('en-US')); 
      }) 
     }); 
+1

文字列は数字として機能しません –

+0

あなたは正しいですか? –