tyler
tyler

Reputation: 1293

Multiplying Taxes and Adding to Total Amount

We don't always have to add taxes to order so I need a way that taxes will be bypassed by default unless specified.

So I have the following text box:

  <input  class="txt1" type="text" name="subtotal" value="" id="subtotal"
  size="16" tabindex="42" onChange="enableBeforeUnload();" 
  onKeyUp="enableBeforeUnload();">

I have this text box working correctly-it sums the values.

I have two text boxes that I'm trying to multiply by the tax percent and display the total:

 <input  class="txt1" type="text" name="tax" id="tax" value="1" size="16" tabindex="42"
  onChange="enableBeforeUnload();" onKeyUp="enableBeforeUnload();">

 <input  class="txt2" type="text" name="total1" value="" id="total1" size="16" 
 tabindex="42" onChange="enableBeforeUnload();" onKeyUp="enableBeforeUnload();">

I tried using the following with no luck:

 var tax = +$("#tax").val(),          // get tax and convert to a number
total = tax ? sum * tax : sum;   // if tax is a non-zero number multiply
                                 // otherwise just take the sum as is     

and this:

 totAmt.val(sum + sum*parseFloat(taxAmt.val()/100));

I could not implement either correctly. Thanks in advance.

http://jsfiddle.net/thetylercox/jh2Ne/7/ i coul dnot get this to work correctly http://soldbybillcox.com/treasure/demo.php its working fine here

Upvotes: 0

Views: 1491

Answers (3)

try adding a function to do your calculations

total = getTax($('#tax').val()) * sum;

Upvotes: 0

ChrisThompson
ChrisThompson

Reputation: 2008

For starters, you are calling:

$("#tax")

But you don't have an element with an id of tax. you could use:

$("input[name=tax]")

-edit-> So is the problem getting the values, or the logic in calculating the total? You could throw your tax logic in a function:

function getTax(tax){
var taxFloat = parseFloat(tax)
if(isNaN(taxFloat)){
    return 1;
}else{
    return taxFloat;
}
}

Then use:

total = getTax($('#tax').val()) * sum;

Upvotes: 2

ScottyDont
ScottyDont

Reputation: 1207

And what's that plus doing in your formula? Should just be:

var tax = $("#tax").val()

Upvotes: 0

Related Questions