Jquery:使用复选框值更改现有价格

时间:2013-04-12 16:25:25

标签: javascript jquery html

我有结帐表格,基本价格是249.99美元。用户可以选择以99.99美元的价格添加桌子和/或椅子。截至目前价格发生变化,但取消了基本价格而不是增加价格。取消选择后,它实际上会减去基本价格,总计为0美元。

$(':checkbox').change(function(){
    var sum = 0;
    var names = $(':checked').map(function(){
        sum += (this.value - 0);
        return this.name;
    }).get().join(',');
    var spans = $('span.amount');
    spans[1].innerHTML = sum;
});

我做了一个fiddle here来表明我的意思。那么如何让基价保持在249.99美元并做正确的数学运算呢?非常感谢您的帮助。

3 个答案:

答案 0 :(得分:6)

为什么sum = 0?在给定的例子中不应该是249.99吗?

看看这个:

http://jsfiddle.net/XSCZ3/7/

答案 1 :(得分:1)

只需初始化您的sum变量,例如:var sum = 249.99;

演示:http://jsfiddle.net/darkajax/vANz4/

答案 2 :(得分:1)

2个问题。

将您的金额更改为249.99初始化。

最后一行应更改显示总和的2行代码。 http://jsfiddle.net/XSCZ3/12/

为什么您只更改按钮价格。您应该在小提琴的顶部更改按钮价格和最终价格标题。

$(':checkbox').change(function(){
    var sum = 249.99;
    var names = $(':checked').map(function(){
        sum += (this.value - 0);
        return this.name;
    }).get().join(',');
    //var spans = $('span.amount'); No need for this
    //spans[1].innerHTML = sum;  No need for this
    $('span.amount').text(sum); //Change to this.
});