2

我有一个变量应该包含一个运行总计。在此循环的每次传递中,应将金额添加到运行总数中。我必须遗漏一些东西,因为我得到未定义或 NaN。

$('#btnSubmit').click(function(e) {
    var totalSqft;
    $('.fieldset').each(function() {
        var sqft;
        var width = $(this).find('input:eq(0)').val();
        var height = $(this).find('input:eq(1)').val();
        var type = $(this).find('select').val();
        if (type == 'tri') {
            sqft = (width * height) / 2;
        } else {
            sqft = (width * height);
        };
        totalSqft += sqft;
        alert('this ' + type + ' is ' + width + ' wide and ' + height + ' high, for a total of ' + sqft + ' square feet');
    });
    alert('Done.  Total Sq Ft is ' + totalSqft);
})​
4

1 回答 1

7

您需要将值初始化为 0:

var totalSqft = 0;

否则,它会被初始化为undefined,并且undefined+ 一个数字是NaN

于 2012-04-18T00:26:55.797 回答