Hello, I have a problem that I am breaking my head at times and I just can not understand why this occurs ... In my application I have a cart that until then inserts products normally, adds the sum of its values and adds to the total, however, when I try to remove an item from the cart it is simply messing up the total value
Forexample,whenIremoveTunawhichisthefirstiteminthelist,itsimplysubtractsthetriplicatevalue,ifIremovethesalmonwhichistheseconditeminthelist,itremovesduplicate...
ExampleremovingtheTuna:
Thevalueisnegativeandintheconsoleitisasifithasbeenremoved3xwithasingleclick...
Intheelementsithasbeencorrectlydeleteduntil
HerearethecodesIusedtocreatetheelements,removeandupdatethetotalvalueofthecartwhenIdeletedanitem:
CreatingItems
$(document).ready(function(){
var btnAdcionaCarrinho = $(".btn-adicionar-carrinho");
btnAdcionaCarrinho.click(function(){
adicionaProduto($(this));
totalPedido(buscaItensPedido());
});
});
function adicionaProduto(el){ //adiciona produto ao carrinho
console.log(el);
var nomeProduto = el.parent().find(".titulo-produto");
var qtdProduto = el.parent().find(".qtd-produto").val();
var precoProduto = el.parent().find(".preco-produto").text();
alteraQtdItensCarrinho("add");
buildItemPedido(nomeProduto.text(),qtdProduto,precoProduto);
carrinho.find(".btn-remover-item").click(function(){
console.log($(this));
alteraQtdItensCarrinho("del");
removeProduto($(this));
});
}
function buildItemPedido(nomeProduto,qtdProduto,precoProduto){//cria a linha na tabela contendo as informações sobre o pedido
var novoItem = $("<tr></tr>");
var nomeItem = $("<td></td>").addClass("nome-pedido").text(nomeProduto);
var qtdItem = $("<td></td>").addClass("qtd-pedido").text(qtdProduto);
var qtdPrecoItem = $("<td></td>").addClass("qtd-preco-pedido").text(precoProduto);
var removerItem = $("<td></td>").addClass("remover-item");
var botaoRemover = $("<span></span>").append("<i></i>").addClass("icon-close btn-remover-item");
removerItem.append(botaoRemover);
novoItem.append(nomeItem,qtdItem,qtdPrecoItem,removerItem);
carrinho.append(novoItem);
console.log(novoItem);
console.log(carrinho);
return carrinho;
}