2015-05-08 101 views
1

我想寫一些代碼,將執行以下;選擇數字,然後格式化爲2位小數

  1. 添加ID到第n個子
  2. 格式在第n個孩子的數量爲2位小數
  3. 在數字
  4. 循環前應用£直到表中的每個第n個孩子做

我有這樣的數字來使用代碼我可以把它湊到「1」,但我需要它舍入到0.78的代碼「0.7823076923076923」一輪,然後添加「toFixed(2)」和它把我的「1」,並把它放到「1.00」,但我需要它到「0.78」,一旦我有了這個地方,我可以看看我如何循環代碼,但小步驟。

感謝您的幫助。

代碼:

<script> 
$(document).ready(function(){ 
    $('table>tbody>tr>td:nth-child(5n)').prop('id', 'test'); 
    $('#test').text(function(i,v) { 
     return Math.round(parseInt(v * 100)/100).toFixed(2); 
    }); 
}); 
</script> 

UPDATE 我得到它的工作!

$(document).ready(function(){ 
    $('table>tbody>tr>td:nth-child(5n)').prop('id', 'test'); 
    var test = parseFloat($('#test').text()).toFixed(2); 
    $('table>tbody>tr>td:nth-child(5n)').empty().append(test); 
}); 

現在,使其循環,

感謝所有幫助。

+0

請參閱http://stackoverflow.com/questions/6134039/format-number-to-al way-show-2-decimal-places – GillesC

回答

1

爲了圓一個數字n小數位:

var n = 2; 
var number = 0.7823076923076923; 
var result = Math.round(number * Math.pow(10,n))/Math.pow(10,n); 
result = result.toFixed(n); 

UPDATE:

對於更多可重複使用的選項,可以自定義一個舍入函數:

function roundTo (value, n) { 
    var result = Math.round(value * Math.pow(10,n))/Math.pow(10,n); 
    return result.toFixed(n); 
} 

var foo = roundTo(0.7823076923076923, 2); // 0.78 
+0

嘿,謝謝你, 我該如何去做var數字而不是定義一個數字?像var number = #test或者某事im在這方面沒有好運這樣做 再次感謝。 – zoro724

+0

當然,您可能只是想在這種情況下創建一個新功能。更新了答案。 –

相關問題