aspose file tools*
The moose likes HTML, CSS and JavaScript and the fly likes Rounding off $$ amounts Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Spring in Action this week in the Spring forum!
JavaRanch » Java Forums » Engineering » HTML, CSS and JavaScript
Bookmark "Rounding off $$ amounts" Watch "Rounding off $$ amounts" New topic
Author

Rounding off $$ amounts

Scott Christy
Greenhorn

Joined: Sep 23, 2003
Posts: 11
I've managed to create a self calculating form but I'm stuck on getting the calculation amounts to round off to 2 decimal places. In the example I've pasted below, I need to make the sales tax and grand total amounts round off to 2 decimal places since it is displaying money. The other total fields I don't need to worry about since, unless the price changes, they will never be anything but a whole value. FYI, the sales tax is based on what the user selects in the state field farther up in the form.
Can someone help me?

[ September 24, 2003: Message edited by: Scott Christy ]
[ September 25, 2003: Message edited by: Eric Pascarello ]
Eric Pascarello
author
Rancher

Joined: Nov 08, 2001
Posts: 15376
    
    6
yourAns = Math.round(yourVar * 100)/100;
this will round your answer but will not display extra zeros if needed.
So you need to use this too...

See if that helps you
[ September 25, 2003: Message edited by: Eric Pascarello ]
Scott Christy
Greenhorn

Joined: Sep 23, 2003
Posts: 11
Thanks for the code. I think I see what you're doing but I'm not sure about how to put it in my code. I'll give it a try this afternoon and let you know how it goes.
Thanks again for trying to help me.
Scott Christy
Greenhorn

Joined: Sep 23, 2003
Posts: 11
That worked perfect for rounding the values to the nearest dollars and cents. I'm left with one last problem. When the subtotal and the tax are added together it appears to be rounding off to the nearest whole dollar value. For example, in the script below, if the subtotal calculates to 30 and the tax is 1.65 the answer given for the total is 31. It shoudl be 31.65.

[edited to fit page: Eric]
[ September 29, 2003: Message edited by: Eric Pascarello ]
Scott Christy
Greenhorn

Joined: Sep 23, 2003
Posts: 11
I changed the line that says:
form.grandtotal.value = Math.round((parseInt(form.tax.value) + parseInt(form.subtotal.value)) * 100)/100;
to
form.grandtotal.value = Math.round((parseFloat(form.tax.value) + parseFloat(form.subtotal.value)) * 100)/100;
and it seems to work ok. Is this the right technique to use?
Eric Pascarello
author
Rancher

Joined: Nov 08, 2001
Posts: 15376
    
    6
yes, the int does not carry decimal places....float does...
Scott Christy
Greenhorn

Joined: Sep 23, 2003
Posts: 11
Good to know. Eric, Thanks for all your help.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Rounding off $$ amounts