jQuery - 填写表单输入的计数器(即时更新)

时间:2015-09-02 15:12:56

标签: jquery forms jquery-calculation

我有基本的订单表格(4个输入仅用于测试目的),我想计算填写值的输入数量(总项目数),然后高于0(基本上订购了多少产品,不要混淆他们的数量)。当我添加产品很好,当我删除项目时将问题开始(将它们设置为0)。你能帮我解决一下吗?

工作jsfiddle:http://jsfiddle.net/nitadesign/97tnrepg/33/

几行可以将您的注意力集中到正确的位置:

function GetOrder(curId){
var order = null;

for(i = 0; i< orders.length; i++){
     if(orders[i].id == curId){
        order = orders[i];
        break;
    }
}

return order;
}

function CalculateTotal(){
var total = 0;
for(i = 0; i< orders.length; i++){
    total = total + orders[i].packTotal;
}
console.log(total);

if(total > 0){
    $("#order_total").html('Total Items:' + i + '<br>' + 'Order Subtotal: ' + total);
    $("#order_total").show();
    $('.submitorder').show();
}
if(total == 0){
    $("#order_total").html('Your shopping basket is empty');
    $("#order_total").show();
    $('.submitorder').hide();
}
}

非常感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

只需使用jquery选择器并循环遍历它。

$("input").change(function(){
    var counter = 0;
    $("input").each(function(){
        if($(this).val() != "" && $(this).val() != 0) counter++;
    });

    $("#order_total").html('Total Items:' + counter + '<br>' + 'Order Subtotal: ' + total);
});

答案 1 :(得分:0)

if(total > 0){
    var counter = 0;  
    $("input[type=text]").each(function(){
    if($(this).val() != "" && $(this).val() != 0) counter++;
    });
    $("#order_total").html('Total Items:' + counter + '<br>' + 'Order Subtotal: ' + total);
    $("#order_total").show();
    $('.submitorder').show();
}
if(total == 0){
    $("#order_total").html('Your shopping basket is empty');
    $("#order_total").show();
    $('.submitorder').hide();
}