Initialise as numbers instead of strings?...

var bagqty = 0;
var bagtotal = 0;

On Apr 4, 9:35 pm, Chuck Cheeze <[EMAIL PROTECTED]> wrote:
> Here is my code:
>
> <pre>
>         <script type="text/javascript">
>                 //on page load
>                 $(document).ready(function() {
>                         //add up the cart totals and display on the page
>
>                         //setup default values
>                         var bagqty                      = '';
>                         var bagtotal            = '';
>
>                         //get all table rows
>                         $('#shoppingcart tbody tr').each(function() {
>                                 //get the row's price, remove the $
>                                 var price = parseFloat($('.itemprice', 
> this).text().replace(/^[^
> \d.]*/, ''));
>                                 //make sure its a number
>                                 price = isNaN(price) ? 0 : price;
>                                 //get the row's quantity
>                                 var qty = parseInt($('.itemqty', 
> this).text());
>                                 //get the item's shipping amount
>                                 var ship = parseFloat($('.itemshipping', 
> this).text().replace(/^[^
> \d.]*/, ''));
>                                 //make sure its a number
>                                 ship = isNaN(ship) ? 0 : ship;
>                                 //calculate the extended price
>                                 var extprice = (qty * price) + ship;
>                                 //add back in the $ sign and write to the page
>                                 $('.itemextprice', this).text('$' + 
> extprice.toFixed(2));
>                                 //add to totals
>                                 bagqty += qty;
>                                 bagtotal += extprice;
>                         });
>
>                         //return the totals
>                         $('.bagtotal').text('$' + bagtotal.toFixed(2));
>
>                 });
>
>         </script>
> </pre>
>
> I have 2 issues-
>
> 1- the bagqty += qty; and bagtotal += extprice; calculations return
> appended values, not added.  So if there are 2 products and the bagqty
> values are 5 and 3 I get 53 instead of 8.
>
> 2- the $('.bagtotal').text('$' + bagtotal);     line won't work.  I get a
> bagtotal.toFixed is not a function error.  It works fine in the
> itemextprize calculation up higher.
>
> Any ideas?

Reply via email to