Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Projeto] Minha solução

function comprar(){
    let tipoIngresso = document.getElementById('tipo-ingresso').value;
    let qtdeIngresso = document.getElementById('qtd').value;    
    AtualizaLista(qtdeIngresso, tipoIngresso);
}
function AtualizaLista(qtde, tipo){
    let tipoTkt = document.getElementById(`qtd-${tipo}`); 
    let totalTkt = parseInt(tipoTkt.innerHTML);
    if (qtde > totalTkt){
        alert('Quantidade de tickets indisponível');
    }else{
        totalTkt = totalTkt - qtde;    
        tipoTkt.innerHTML = `<span id="qtd-${tipo}">${totalTkt}</span>`;
        tipoTkt.innerText = totalTkt;
        alert(`Compra realizada com sucesso`);
    }                 
}
2 respostas
solução!

Oi João,

Excelente iniciativa em compartilhar sua solução! 👍

Sugiro você utilizar innerText para pegar o valor de totalTkt, assim:

    let totalTkt = parseInt(tipoTkt.innerText);

Dessa forma, você garante que apenas o valor numérico seja recebido. 💪

Para saber mais: innerHTML

Continue praticando e explorando novas soluções! 🤔

tux matrix Caso este post o tenha ajudado, marque-o como solucionado ☑️. Bons Estudos! 🤓

Valeu Luís

Eu mantive o innerHTML pois, o console.log, estava retornando somente o valor da tag. Isso antes de eu lembrar do innerText e textContent