微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在我的项目输入值更改的同时更改我的总输入值

如何解决如何在我的项目输入值更改的同时更改我的总输入值

我无法在我的项目输入值更改的同时更新我的​​ GrandTotal 值。仅当我将另一个项目添加到购物车时,grandTotal 才会更新。如何在不添加项目的情况下更新我的 grandTotal?我试过将我的 GrandTotal 变量放在数量变化事件块中,但每次数量变化时,总数只会增加而不是减少。我还尝试将事件侦听器切换为“更改”而不是“单击”,但仍然存在相同的问题。

    
     let grandTotal = 0;
  let addBtn;
  let subBtn;
  let cartElements;
  let parsed;
  for(let i = 0; i < cartElement.length; i++){
    cartElements = cartElement[i];
    quantities = qtyElement[i];
    prices = priceElement[i];
    addBtn = addBtns[i];
    subBtn = subBtns[i];
    parsed = parseFloat(prices.value);
    grandTotal += parsed;
  }
  cartElements.addEventListener('click',function(e) {
      let buttonClicked = e.target;
      if(buttonClicked.innerText === "+"){
        quantities.value++;
        prices.value = quantities.value * price;
      } if(buttonClicked.innerText === "-"){
        quantities.value--;
        prices.value = quantities.value * price;
      } 
    });
  grandTotalInput.value = grandTotal;
 }
<form class="cart-form">
  <h1>shopping cart</h1>
     
  
  </form>
<form id="totalContainer">
  
</form> 
<div class="grandTotal">
  <input name="grandTotalInput" id="grandTotalInput" type="number" disabled="">
</div>

解决方法

您需要更新此函数内的总计:

quantities.addEventListener('click',function(){
    let qty = parseFloat(quantities.value);
    prices.value = qty * price;
});

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。