处理数值时出现奇怪的JS问题
Strange JS issue while working with numeric values
其想法是每次选中复选框时都刷新总值。
我的HTML看起来像
<table class="table table-striped table-bordered table-hover">
<tbody>
...
<tr>
<td><input type="checkbox" name="services[]" value="5" class="services"></td>
<td>Sample</td>
<td id="srv_5">60</td>
</tr>
...
</tbody>
</table>
功能看起来像
function calcServicesTotal() {
var total=0;
$('.services').each(function () {
var id = parseInt($(this).val());
var price = parseInt($("#srv_" + id).text());
if (this.checked) {
total = total + price;
console.log("id - " + id + " price - " + price);
}
else {
if (total > 0)
total = total - price;
}
});
console.log("total - " + total);
}
问题是,我可以看到console.log("id - " + id + " price - " + price);
的正确值,但每次为0时total都会保持不变。我做错了什么?
这毫无意义的
else {
if (total > 0)
total = total - price;
}
否则根本没有意义,所以如果复选框未选中,则进行减法。因此,如果选中第一个复选框,它将使total>0,并且所有复选框都未选中,则开始减去它们的值,直到它为零。
那张支票不属于那里。
相关文章:
- 使用angular.js问题的JavaSpringREST服务
- node.js应用程序中的async.js问题
- 复选框与文本内联-JS问题
- 重构 jQuery in JS 问题
- CSS/.JS问题,<ul><李>在Megamenu中
- IE9 动态页面 JS 问题
- 对 Drupal 站点的客户端 JS 问题进行故障排除
- 处理数值时出现奇怪的JS问题
- 与阿尔伯特·爱因斯坦有node.js问题
- 配置文件需要 JS 问题
- 设置超时功能在 chrome 扩展程序弹出窗口.js问题
- KNOCKOUT.js问题:“H.apply不是一个函数.(在'h.apply(e,r)'中,'
- 在iPad上播放的视频-JS问题(仅声音)
- 奇怪的JS问题
- 使用车把.js问题
- 实时Magento网站上的原型JS问题
- Knockout JS问题与tinymce文本区域
- Jquery Carousel 不起作用(JS 问题)
- 拖放区 AMD 需要 JS 问题
- 双击缩放和锤击.js问题