0

私のvalues配列は[100,200,300,500]の形式で正しく返されます。これらの値を合計したいのですが、何が間違っているのでしょうか。

Jquery

$('select').focus(function () {
    previous = parseInt($(this).val());
}).change(function() {

    var item_cost = parseInt($(this).attr('cost'));
    
    values = $.map($('select[name="cookies"]'), function (e) {
            
        return $(e).val()* item_cost;
                     
        for (var i = 0; i < values.length; i++) {
            total += parseInt(values[i]);
            console.log(total);                              
        }
    });

    alert(values);
4

1 に答える 1

2

コードをフォーマットする必要があります。クロージングを逃した});あなたも宣言する必要がありvar total = 0;ます。それがあなたのコードの他の場所にあるかどうかはわかりません。

$('select').focus(function() {
    previous = parseInt($(this).val());
}).change(function() {
    var item_cost = parseInt($(this).attr('cost'));

    values = $.map($('select[name="cookies"]'), function(e) {
        return $(e).val() * item_cost;
    }); // <-- RIGHT THERE

    for (var i = 0; i < values.length; i++) {
        total += parseInt(values[i]);
        console.log(total);
    }
});
alert(values);​
于 2012-11-21T17:44:48.033 に答える