2

i want to have a form whereby i can add a value into the first text field, multiply that by a second hidden field, and display results in a 3rd text field. I want it so as soon as you add a value to the first field it shows the result in the 3rd field, eg on key up.

<label>Qty:</label>
<input name="qty" id="qty" type="text" />
<input name="price" id="price" type="hidden" value="30" /><br />

<label>Total:</label>
<input name="total" id="total" type="text" />

Any help would be great as im new to jquery.

nathanchere
  • 8,008
  • 15
  • 65
  • 86
user2489811
  • 89
  • 1
  • 3
  • 9

3 Answers3

4
$("#qty").keyup(function(){
   total = $("#qty").val()* $("#price").val();
   $("#total").val(total);
});
Akhil5
  • 210
  • 2
  • 8
4

Though you got the answer but you should type cast the values you type in inputs. I mean what if someone type any other value other than integer... then you will get NaN in 3rd textbox..Here is solution to handle this problem

$(document).ready(function(){
    var qty=$("#qty");
    qty.keyup(function(){
        var total=isNaN(parseInt(qty.val()* $("#price").val())) ? 0 :(qty.val()* $("#price").val())
        $("#total").val(total);
    });
});

or you can check jsfiddle http://jsfiddle.net/ugPxf/

Mahajan344
  • 2,492
  • 6
  • 39
  • 90
0

This should work.

$('#qty').on('keyup',function(){
     $('#total').val( $('#qty').val() * $('#price').val());
});

R.

Rob Schmuecker
  • 8,934
  • 2
  • 18
  • 34