javascript - 为什么这个加法或减法不起作用?

标签 javascript

我尝试创建一个总价,我有很多产品(10)并且所有产品都有按钮(加:+1和减:-1)对于每个我做的价格*数量,现在我想创建一个总价(只是显示总价格的跨度)。此代码将价格添加到总价中,但不减去,当我单击按钮时,只有一个价格添加到我点击的第一个价格中。

var veste = 0, pantalon = 0, chemise = 0, chemise_pliee = 0, robe = 0, 
    manteau = 0, blouson = 0, pull = 0, cravate = 0, couette = 0;

var qt_articles = [];
var tab_prix = [];
var prix_global = parseFloat(document.getElementById('prix_global').innerHTML);

function print_nb_article(article, nb) {
    $('#top_ten_nb_'+article).text(nb);
    var prix = $('#top_ten_nb_'+article+'_prix').val();
    var prix_tt = prix * nb;
    $('.prix_'+article).text(prix_tt);


    if (prix_tt > 0) tab_prix.push(prix_tt);
    for(i=0; i<=tab_prix.length; i++) {

        if ('#plus_'+article)
            prix_global += parseFloat(tab_prix[i]);
        document.getElementById('prix_global').innerHTML = prix_global;

        return false;
    }
}


$('#plus_veste').click(function() {
    veste++;
    print_nb_article('veste', veste);
    return false;
});  

$('#moins_veste').click(function() {
    veste--;
    print_nb_article('veste', veste);
    return false;
});

$('#plus_chemise_pliee').click(function() {
    chemise_pliee++;
    print_nb_article('chemise_pliee', chemise_pliee);
    return false;
});  

$('#moins_chemise_pliee').click(function() {
    chemise_pliee--;
    print_nb_article('chemise_pliee', chemise_pliee);
    return false;
});

...

我找不到问题, 有人可以帮助我吗?

最佳答案

问题可能是 if block 周围缺少大括号吗?

if ('#plus_'+article) {
  prix_global += parseFloat(tab_prix[i]);
  document.getElementById('prix_global').innerHTML = prix_global;
}

这就是你的意图吗? FWIW,我总是使用大括号,即使是单行的。它不仅可以防止错误(如果确实存在错误),还可以阐明您的意图。

关于javascript - 为什么这个加法或减法不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22334377/

相关文章:

javascript - 多次重复使用 Deferred

javascript - 以下演示中的 FadeIn 和 fadeOut

javascript - 提交后将焦点设置在输入元素上

javascript - $http.get API 响应在 HTML 表中使用 Angular js

javascript - 用于 Internet Explorer 的拖放文件上传库

javascript - React-Native headless (headless)怀疑

javascript - 函数 gapi.client.load ('oauth2' , 'v2' , 函数());不管用

javascript - 取消按钮 HTML jQuery

javascript - 我试图在谁赢谁输的答案弹出之前延迟(剪刀石头布游戏)

javascript - 如何从子组件内部更新 React Context?