Atualizar Quantidade do carrinho
Olá amigos,
Estou com um desafio enorme aqui, fiz um carrinho de compras baseado em uma video aula na net, mais claro que eu personalizei códigos.
Está ocorrendo o seguinte, quando eu adiciono apenas um produto no carrinho, e mudo a quantidade e clico em atualizar, ele faz a atualização do carrinho de boa. Mais quando eu adiciono mais um produto, ou mais, ele não atualiza a quantidade de nenhum produto. Abaixo está meu código:
function addItem(idProduto,qtdProduto){
$("table").on('click', '#aq', function (e) {
var id = idProduto;
var quantidadeItem = qtdProduto;
// var id = $(this).attr('data-idatualiza');
// var quantidadeItem = $('input[name="qtd"]').val();
// alert(id+'-'+quantidadeItem);
$.post('<?= INCLUDE_PATH ?>/carrinho/carrinho.php', {acao: 'add', id: id, qtd: quantidadeItem}, function (retorno) {
if (retorno == 'ok') {
getItens();
$('.escurecer').hide();
location.href = "<?= BASE; ?>/carrinho";
} else {
console.log(retorno);
//alert('Erro ao atualizar item do orçamento, tente novamente!');
}
}, "json");
return false;
});
}
function getCart(data) {
//Variaveis do topo
var carrinho = $("#cartAll");
var countCart = carrinho.find("#qtdItem");
//variaveis da pagina carrinho
var carrinhoPage = $("#cartPage");
var tbody = carrinhoPage.find("tbody");
var countCar = carrinhoPage.find("#qtdCar");
var totalCart = carrinho.find("#totalCart");
var quantity = $("#inputQuantidade");
var tr = '';
if (data.count > 0) {
$.each(data.Dados, function (i, val) {
addItem(data.Dados[i].idProduto ,data.Dados[i].quantidade);
//console.log(i);
tr += '<tr style="color:#444444;">';
if (data.Dados[i].img < 0) {
tr += '<td style="width:160px;"><img src="http://fabricafantastica.com.br/uploads/' + data.Dados[i].img + '" class="img-responsive" alt="" width="150"></td>';
} else {
tr += '<td style="width:160px;"><img src="http://fabricafantastica.com.br/uploads/' + data.Dados[i].img + '" class="img-responsive" alt="" width="150"></td>';
}
tr += '<td><h4 style="color:#444444;"><a href="' + data.Dados[i].url + '">' + data.Dados[i].nome + '</a></h4></td>';
tr += '<td style="width:80px;"><center><div class="input-group input-group-sm"><input type="number" min="' + data.Dados[i].qtdminimo + '" max="' + data.Dados[i].qtdmaximo + '" style="width:70px;text-align:center;" name="qtd" class="form-control" value="' + data.Dados[i].quantidade + '"/><span id="btn" class="input-group-btn"><button type="submit" class="btn btn-success btn-flat" id="aq" data-idatualiza="' + data.Dados[i].idProduto + '"><i class="fa fa-refresh"></i></button></span></div></center> </td>';
tr += '<td style="width:80px;"><center><a href="javascript:;" class="btn btn-danger btn-medium btn-mini" id="removeItem" data-id="' + data.Dados[i].id + '"> <i class="fa fa-trash-o"></i></a></center> </td>';
tr += '</tr>';
quantity.val(data.Dados[i].quantidade);
});
if (data.count == 0) {
countCart.text('(0 item)');
} else if (data.count == 1) {
countCart.text('(1 item)');
} else {
countCart.text('(' + data.count + ' itens)');
}
if (data.count == 0) {
countCar.text('Meu Orçamento: Nenhum Item');
} else if (data.count == 1) {
countCar.text('Meu Orçamento: (1) Item');
} else {
countCar.text('Meu Orçamento: (' + data.count + ') Itens');
}
tbody.empty().append(tr);
} else {
countCart.text('(0 item)');
tbody.html('<tr><td colspan="4" style="color:#444444;">Seu carrinho de orçamento está vazio. </td></tr>');
}
}
A primeira função eu faço o update da quantidade do produto, a segunda função faço uma lista de produtos com jquery em uma tabela, como podem ver. E passo um parametro dinamico no botao de atualizar a quantidade.
Obs. Editado agora: Ne verdade ele não está atualizando nem com um produto e nem com dois ou mais.
Fico no aguardo de alguém para solucionar meu problema.
Discussão (2)
Carregando comentários...