显示jquery val()自动求和值

时间:2014-06-25 11:17:45

标签: jquery

我有一个默认价格,我将该值乘以用户选择,它仅在刷新后显示该值,是否可以自动显示总和?

$(document).ready(function() {
  $("#order-rezultats").text($("#price").val() * $("#quantity").val());
});

HTML

<div class="row order">
    <label>Order:</label>
        Price: <input type="text" name="price" value="10" id="price" disabled />
        Count: <input type="text" name="quantity" value="1" id="quantity" />
        = <span id="order-rezultats"></span> Ls
</div>

4 个答案:

答案 0 :(得分:2)

尝试使用input事件来处理正确的事情,

$('#quantity').on('input', function () {
    var value = parseFloat($("#price").val()) * parseFloat($("#quantity").val());
    $("#order-rezultats").text(isNaN(value) ? 0 : value);
});

此处我们使用isNaN()来处理NAN值。

DEMO

答案 1 :(得分:2)

只需使用keyup休息您的代码运行正常

$('#quantity').keyup(function() {

  $("#order-rezultats").text($("#price").val() * $("#quantity").val());
});

http://jsfiddle.net/6c77g/

答案 2 :(得分:2)

keyup很好:

$(function() {
    $("#quantity").on('keyup', updatePrice);  
    updatePrice();  
})


function updatePrice() {
    $("#order-rezultats").text($("#price").val() * $("#quantity").val());
}

答案 3 :(得分:1)

.val()返回字符串。首先将字符串转换为浮点值或整数

    $('#quantity').keyup(function() {

       var price = parseFloat($("#price").val());
       var quantity = parseInt($("#quantity").val());

       $("#order-rezultats").text(price * quantity);

   });