Search code examples
jquerykeyupjquery-calculation

Display results on keyup event and values inside form how to?


How do i display the output on keyup event rather than on submit and also the values inside the input fields?

I tried readonly <input id="result" name="totalamount" value="" readonly/>but its not working. can someone helo?

Here is thew complete codes

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<script>
    $('#myForm').submit(function (event) {
        event.preventDefault();

        var actualprice = Number($("#actualprice").val().trim());
        var discount = Number($("#discount").val().trim());
        var shipping = Number($("#shipping").val().trim());

        var discountRate = (100 - discount) / 100;
        var result = (actualprice * discountRate) + shipping;

        $("#result").html("Result :" + result.toFixed(2));
    });
</script>


<form id="myForm">
    <input id="actualprice" type="number" placeholder="Actual Price">
    <input id="discount" type="number" placeholder="Discount">
    <input id="shipping" type="number" placeholder="Shipping">
    <input  id="result" name="totalamount" value="" readonly/>
    <h3 id="result"></h3>

    <input type="submit" value="Submit">
</form>

Solution

  • Use keyup event for input and you are using same id result for an input and h3. I've changed the id of h3 to result2.

    $('input').on('keyup input', function () {
      var actualprice = Number($("#actualprice").val().trim());
      var discount = Number($("#discount").val().trim());
      var shipping = Number($("#shipping").val().trim());
    
      var discountRate = (100 - discount) / 100;
      var result = (actualprice * discountRate) + shipping;
      
      $("#result").val("Result :" + result.toFixed(2));
    });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <form id="myForm">
        <input id="actualprice" type="number" placeholder="Actual Price">
        <input id="discount" type="number" placeholder="Discount">
        <input id="shipping" type="number" placeholder="Shipping">
        <input id="result" name="totalamount" value="" readonly />
        <h3 id="result2"></h3>
    
        <input type="submit" value="Submit">
    </form>