0

我有这个运行良好的jsFiddle,我正在尝试使用 jQuery 和选择框计算产品的总价格。

I have one issue however, when the second select option of 'black widow' is selected, the data-value is updated depending on what is selected in the first select box.

data-value 为 100(选择 1x12 箱体时)
data-value 为 200(选择 2x12 箱体时)
data-value 为 400(选择 4x12 箱体时)

这一切都正确更新(我已经检查了 Chrome Inspect 并且数据值正在更新),但是,一旦选择了一次黑寡妇选项,总价格就会拒绝动态更新。

谁能澄清这是为什么?有没有办法在每次更改选项时重新加载 updateTotal 变量?我认为这就是它正在做的事情,但显然不是。

这是我的js:

//Calculate Total Price
    $("select[name='options']").change(function() { 
        updateTotal(); 
    });

//Function for price calculator
function updateTotal() {
    var newTotal = 0;
    $("select[name='options'] option:selected").each(function() {
        newTotal += parseFloat($(this).data('value'));
    });
    $(".total").text(newTotal);
}

谢谢!

4

1 回答 1

1

改变这个:

$(".widow").attr('data-value', price[$(this).val()]);

对此:

$(".widow").data('value', price[$(this).val()]);

查看更新的小提琴

于 2013-07-22T12:36:15.067 回答