jQuery - 计算多个输入中的值
jQuery - calculations of values in the multiple inputs
我有基本的订单,我想对所有输入的值求和。但是当我添加项目时,程序会将这些值添加到一个字符串中并对其进行总结(totalUnits)。
工作 jsfiddle:http://jsfiddle.net/nitadesign/97tnrepg/48/
以及将您的注意力转移到正确位置的代码部分
function CalculateTotal(){
var total = 0;
for(i = 0; i< orders.length; i++){
total = total + orders[i].packTotal;
}
console.log(total);
console.log(totalUnits);
if(total > 0){
var counter = 0;
$("input[type=text]").each(function(){
if($(this).val() != "" && $(this).val() != 0) counter++;
});
var totalUnits = 0;
$("input[type=text]").each(function(){
packUnit = $(this).val();
totalUnits = totalUnits + packUnit;
});
$("#order_total").html('Ordered Products:' + counter + '<br>' + 'Total Items:' + totalUnits + '<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();
}
}
非常感谢你的帮助。
您必须使用 parseInt() 将字符串转换为整数
获取输入值时使用parseInt
:
var packPrice = parseInt($('#pack' + curId + '-price').val());
var packUnit = parseInt($(this).val());
并且在您的 calculateTotal()
函数中还有:
$("input[type=text]").each(function(){
packUnit = parseInt($(this).val());
totalUnits = totalUnits + packUnit;
});
我有基本的订单,我想对所有输入的值求和。但是当我添加项目时,程序会将这些值添加到一个字符串中并对其进行总结(totalUnits)。
工作 jsfiddle:http://jsfiddle.net/nitadesign/97tnrepg/48/
以及将您的注意力转移到正确位置的代码部分
function CalculateTotal(){
var total = 0;
for(i = 0; i< orders.length; i++){
total = total + orders[i].packTotal;
}
console.log(total);
console.log(totalUnits);
if(total > 0){
var counter = 0;
$("input[type=text]").each(function(){
if($(this).val() != "" && $(this).val() != 0) counter++;
});
var totalUnits = 0;
$("input[type=text]").each(function(){
packUnit = $(this).val();
totalUnits = totalUnits + packUnit;
});
$("#order_total").html('Ordered Products:' + counter + '<br>' + 'Total Items:' + totalUnits + '<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();
}
}
非常感谢你的帮助。
您必须使用 parseInt() 将字符串转换为整数
获取输入值时使用parseInt
:
var packPrice = parseInt($('#pack' + curId + '-price').val());
var packUnit = parseInt($(this).val());
并且在您的 calculateTotal()
函数中还有:
$("input[type=text]").each(function(){
packUnit = parseInt($(this).val());
totalUnits = totalUnits + packUnit;
});