以下脚本给出了错误 - 参考:未定义CAT。我缺少一些简单的东西!
// calculate the sum of each table
$(calculateSum);
function calculateSum() {
var sum = 0;
// iterate through each td based on class and add the values
$.each(['income', 'expenses', 'bills', 'savings', 'debt'], function(index, cat) {
var value = $('#'+cat+' .amount').text();
// add only if the value is number
if(!isNaN(value) && value.length != 0) {
sum += parseFloat(value);
}
});
$('#'+cat+' .total').text('$'+ sum);
};
cat
是要传递到 $.each
的函数的参数,因此在该函数之外不存在。您要么需要将$('#'+cat+' .total').text('$'+ sum);
行移至 函数,要么完全做其他事情。
请注意,您的代码在A sum
变量中结合了各种不同类别(收入,费用等)的值。所显示的代码的整个逻辑看起来有些可疑,您可能想退后一步,在更广泛的环境中查看它。
移动此
$('#'+cat+' .total').text('$'+ sum);
iniside
$.each()