2012-11-30 9 views
7

Ho il seguente codice. Funziona a meraviglia a parte voglio variabile tinstotal finale da arrotondato al più vicino 1 (2.04 essere arrotondato al 3 ecc)Arrotondare l'output finale in jquery

$(document).ready(function(){ 

// Animate logo 
$('#Logo').hide().fadeIn(800); 

// Calculation Scripts 
// Square Metres 
var output = $('#SquareMetres'), 
    tinoutput = $('#Tins'), 
    priceoutput = $('#Price'); 
$('input[type="text"]').keyup(function() { 
var width = parseFloat($('#width').val()), 
    height = parseFloat($('#height').val()), 
    result = height * width/10000, 
    finalresult = result.toFixed(2); 
if (isNaN(result)) return; 

output.text(finalresult); 

// Tins 
var tinmetres = 32.5, 
    tinprice = 18.23, 
    tinsresult = finalresult/tinmetres; 
    tinstotal = tinsresult.toFixed(2); 

tinoutput.text(tinstotal); 

var price = tinstotal * tinprice, 
    totalprice = price.toFixed(2); 

priceoutput.text('£'+totalprice) 

}); 
}); 

lo script è attivo qui a http://andyholmes.me/sitewizard/index.html nel riquadro rosso nella parte inferiore. Spero che voi ragazzi potete aiutare, grazie!

risposta

25
tinstotal = Math.ceil(tinsresult); 
tinoutput.text(tinstotal); 

Math.ceil() arrotonderà al successivo numero intero

+0

Stai già utilizzando Math.Ceil() Quindi non c'è il punto di usare .toFixed (2) –

1

uso javascript Math.round()

ex: 
var a = Math.round(2.60); 
var b = Math.round(-2.60); 
var c = Math.round(2.49); 

Result : 
alert(a); => 3 
alert(b); => -3 
alert(c); => 2 

La speranza ti aiuta.