向存储在HTML表中的总值添加或删除UI滑块值

时间:2011-12-11 09:01:48

标签: jquery jquery-ui

我有一个使用Jquery UI滑块的成本估算器滑块,如下所示:

$(function() {
    $("#slider").slider({
       minValue: 0,
       maxValue: 10,
       stepping: 1,
       current: 5,
       slide: function(event, ui) {
     $('.cost').html((ui.value *50.00).toFixed(2)); }
 });
});

如您所见,我可以毫不费力地从滑块ui.value获取值。现在,我希望能够将$('.cost')值添加或减去总值(其中total=parseInt($('#total').html());)。总计包含存储在页面中HTML表格单元格中的其他一些计算的总和<td id="total">Total</td>

我试图通过这种方式做到这一点,但它使总数增加了一倍,并且无法从总数中提取成本:

var total = parseInt($('#total').html());
var scost = parseInt($('.cost').html()); 
$('#total').html((total +  scost).toFixed(2)); 

如果滑块的值发生变化,如何调整总值?

1 个答案:

答案 0 :(得分:0)

最简单的解决方案可能是每次从头开始重新计算成本(即进行整个计算)。

如果每次控件发生变化时向上或向下微调它,你就必须为每个控件缓存前一个值,这样你就可以在应用新控件之前将其反转(否则你最终会添加或减去同一个控件)正如你所看到的那样。这也存在舍入错误的问题。除非您的计算真的复杂,否则每次更改都会重新计算。