Como eu faria para pegar o valor da quantidade do item removido para subtrair na quantidade total, ao invés de retirar -1 sempre ?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Como eu faria para pegar o valor da quantidade do item removido para subtrair na quantidade total, ao invés de retirar -1 sempre ?
Não sei se entendi muito bem a questão, Livia. Você quer uma forma de remover itens que não individualmente, mas que você possa selecionar a quantidade de itens a remover?
Desculpe minha confusão, hehe.
Se eu entendi corretamente, você quer saber a quantidade da linha que você quer apagar.
Creio que você pode fazer isso seguindo o mesmo conceito usado para calcular os totais. Quando eu fiz o curso, os totais estavam marcados com uma classe chamada "item-total". Você poderia pegar a coluna de quantidade e colocar uma marcação de classe para ela. Por exemplo, "item-quantidade".
A sua função de remover poderia ficar assim:
var removeItem = function(event) {
event.preventDefault();
var self = $(this);
var quantidade = self.closest("td .item-quantidade").text(); //Quantidade da linha que vou apagar.
self.closest("tr").remove();
atualizaDados();
};
Para refazer o calculo das quantidades, você pode seguir o mesmo conceito usando na função atualizaDados() para atualizar os valores totais. Algo assim:
var items = carrinho.find(".item-quantidade");
var total = 0;
for(var i=0; i < items.length; i++) {
var conteudo = $(items[i]).text();
var quantidade = parseFloat(conteudo);
total += quantidade;
}
alert('Quantidade de produtos' + total);