Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 88
  • Last Modified:

Javascript newbie

I have 3 diffent tables that I use in a popup. Depending on a radio button selection would depend on what table in the popup I show. Example
<table id=work">
<....
</table>
<table id=travel">
<....
</table>
<table id=image">
<....
</table>

I show the applicable table to visible = true and the others to false....
Easy enough...

When I go to Travel, I have a bunch of asp:textboxes, which has CssClass="toCalculate",  that the user enters data into, only numbers. I had these textboxes calling a jquery function to calculate the values in these textboxes and put the total in a "Total" text box. I was using this to do my calculations
<script type="text/javascript">
    $(document).ready(function () {
        $(".toCalculate").keyup(function () {
            var total = 0;
            $(".toCalculate").each(function (index, item) {
                temp = parsefloat($(item).val());
                if (isNaN(temp))
                    temp = 0;
                total = total + temp;
            });
            $(".total").val(total);
        });
    });

</script>

Open in new window


Al I want to do is make sure that I can get the Total textbox to only have 2 decimal places in the Summed up total? Can someone point me in the right direction in the JQuery to only allow 2 decimal places. I actually have a Mileage textbox that is multiplied by a constant that I have set, in the same portion of the page that I would like to round the value to only 2 decimal places as well...

Id appreciate any help you can offer. Im new to javascript and Im totally new to JQuery but im learning slowly but surely...Thanks for any assistance

JK
0
jknj72
Asked:
jknj72
  • 3
  • 2
1 Solution
 
zephyr_hex (Megan)DeveloperCommented:
You can use toFixed() to specify a number of decimal places for a number that you're calculating.

Please note that you shouldn't reply on toFixed() for rounding.  Use Math.round() to round and then pass the result of the rounding to toFixed() to get your decimal precision.

$(".total").val((Math.round( total * 100 ) / 100).toFixed(2));

Open in new window

0
 
jknj72Author Commented:
ToFixed was the piece I was missing...Thank you sir!!
0
 
jknj72Author Commented:
thanks for the help!!
0
 
zephyr_hex (Megan)DeveloperCommented:
I'm not a sir ;)  But you're welcome.
0
 
jknj72Author Commented:
My apologies.. Thanks again
0

Featured Post

[Webinar] Cloud and Mobile-First Strategy

Maybe you’ve fully adopted the cloud since the beginning. Or maybe you started with on-prem resources but are pursuing a “cloud and mobile first” strategy. Getting to that end state has its challenges. Discover how to build out a 100% cloud and mobile IT strategy in this webinar.

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now