如果您点击添加项目,则会显示3个文本框。如果您输入费用成本中的金额,则必须以总成本(或我输入的所有费用的总和)显示,然后如果我将在采购成本中输入金额,则总成本必须显示费用成本和采购的总和成本,自动。但我的问题是,如果我现在在Acquisition中输入内容,则总成本变为零(0)。
以下是示例:JSFIDDLE
var nitem =0;
var ntotal = 0;
$(document).on('change', '.expense_cost', function() {
ntotal = 0;
$('.expense_cost').each(function(){
if($(this).val() != ""){
ntotal += parseFloat($(this).val());
}
});
$('#total').val(ntotal);
});
$('.btn').click(function() {
nitem++;
$('#wrapper').before('<div id="div' + nitem + '" class="inputwrap">' +
'<input class="expense_name" placeholder="Expense Name" id="' + nitem + '"/>' +
'<input class="expense_desc" placeholder="Expense Description" id="' + nitem + '"/>' +
'<input class="expense_cost" placeholder="Expense Cost" id="' + nitem + '"/><br><br>' +
'</div>');
});
$('.btn2').click(function() {
ntotal = $('#total').val();
$("#div" + nitem + " .expense_cost").each(function(){
if($(this).val() != ""){
ntotal -= parseFloat($(this).val());
}
});
$("#div" + nitem ).remove();
nitem--;
$('#total').val(ntotal); });
var textbox = $("#txtTaxPercent");
var ResultTextbox = $("#txtfctTaxValue");
var PriceTextbox = $("#txtPurePrice");
var pricetotal = $("#total");
$([textbox[0], PriceTextbox[0]]).bind("change keyup keydown paste", function(e) {
var Result;
Result = (parseFloat(textbox.val()) / 100) * parseInt(PriceTextbox.val());
pricetotal.val(Result);
ResultTextbox.val(Result);
});
答案 0 :(得分:0)
我看过你的代码并发现了一些问题。我已经解决了大部分问题,现在它正在发挥作用。我改变了这个和其他一些。
$([textbox[0], PriceTextbox[0]]).bind("keyup paste", function(e) {
$("#txtfctTaxValue").val(0);
var Result;
totalItemExpence();
if(PriceTextbox.val()!=="" ){
Result = (parseFloat(textbox.val()) / 100) * parseInt(PriceTextbox.val());
}
else{
Result = 0;
}
Result = parseFloat( Result) + ntotal;
pricetotal.val(Result);
ResultTextbox.val(Result);
});
在计算购置成本变更总体时,您并不关心项目的总费用。并且还尝试使用文本框值检查值为null或为空或否则您将在算术运算中获得NAN。看看http://jsfiddle.net/hannnan/6jga8/15/