2013-05-31 15 views
1

我有用于子总一个js代码和这个分总时即时改变其文本字段值的变化,因为这字段TotalSavings和TotalVariable改变其应该改变的值为我的TotalExpenses,但它没有这样做。我TotalSavings的文本框,TotalVariable和TotalExpenses是只读的,我怎样才能让我的TotalExpenses按值改变从我的子汇总:TotalSavings和TotalVariable合计值不然而改变,而子总变化

这里是子总我的js代码,

$(function() { 
    $("#Insurance, #COL, #Saveup, #SSS").keyup(function() { 
     var i = parseInt($("#Insurance").val(), 10); 
     var c = parseInt($("#COL").val(), 10); 
     var s = parseInt($("#Saveup").val(), 10); 
     var e = parseInt($("#SSS").val(), 10); 
     $("#TotalSavings").val(i + c + s + e); 
    }); 
}); 


$(function() { 
    $("#Fares, #Recreation, #OtherExpenses").keyup(function() { 
     var f = parseFloat($("#Fares").val(), 10); 
     var r = parseFloat($("#Recreation").val(), 10); 
    var o = parseFloat($("#OtherExpenses").val(), 10); 
     $("#TotalVariable").val(f + r + o); 
    }); 
}); 

这里是我的总计js代码,

$(function() { 
    $("#TotalSavings, #TotalVariable").keyup(function() { 
     var t1 = parseFloat($("#TotalSavings").val(), 10); 
     var t2 = parseFloat($("#TotalVariable").val(), 10); 
     $("#TotalExpenses").val(t1 + t2); 
    }); 
}); 
+0

你有3个单独的DOM就绪函数,把所有这些'keyup'处理程序放到一个。 – tymeJV

回答

2

不要使用keyUp处理程序总价值计算,这一使用功能。 在为TotalSavingsTotalVariable你的情况keyUp回调函数不会被调用,因为变化是由脚本程序作出,而不是由用户输入。

$(function() { 
    $("#Insurance, #COL, #Saveup, #SSS").keyup(function() { 
     var i = parseInt($("#Insurance").val(), 10); 
     var c = parseInt($("#COL").val(), 10); 
     var s = parseInt($("#Saveup").val(), 10); 
     var e = parseInt($("#SSS").val(), 10); 
     $("#TotalSavings").val(i + c + s + e); 
     updateTotalExpenses(); 
    }); 

    $("#Fares, #Recreation, #OtherExpenses").keyup(function() { 
     var f = parseFloat($("#Fares").val(), 10); 
     var r = parseFloat($("#Recreation").val(), 10); 
    var o = parseFloat($("#OtherExpenses").val(), 10); 
     $("#TotalVariable").val(f + r + o); 
     updateTotalExpenses(); 
    }); 
}); 


function updateTotalExpenses() { 
    var t1 = parseFloat($("#TotalSavings").val(), 10); 
    var t2 = parseFloat($("#TotalVariable").val(), 10); 
    $("#TotalExpenses").val(t1 + t2); 
}); 
+0

谢谢你,它似乎工作...但由于某种原因,现在的计算不正确,年初的时候我还没有改变你的代码添加IM分类汇总和其正确的......现在,当我使用我们的代码... TotalExpenses所赐21对11 + 11 ... –

+1

ooopppsss .....对不起......无视我的第一个评论...香港专业教育学院修正的变量和它的完美,现在的工作......非常感谢你的输入和UR帮助... –

+0

@carloyap欢迎您! – zavg