Olá João!
Percebi que há um pequeno erro de digitação no seu código que pode estar causando problemas. Na função compararIngresso
, a variável quantidade
está escrita incorretamente como quanitadade
. Isso pode estar impedindo que a lógica funcione corretamente.
Aqui está uma versão corrigida do seu código:
function comprar() {
// Recuperar o valor do tipo de ingresso
let tipo = document.getElementById('tipo-ingresso').value;
// Recuperar o valor da quantidade
let quantidade = parseInt(document.getElementById('qtd').value);
// Validação de entrada
if (quantidade <= 0 || !Number.isInteger(quantidade)) {
alert(`Por favor, digite uma quantidade válida!`);
document.getElementById('qtd').value = '';
return;
}
compararIngresso(tipo, quantidade);
}
function compararIngresso(tipo, quantidade) {
let estoque = document.getElementById(`qtd-${tipo}`).textContent;
let quantidadeDisponivel = parseInt(estoque);
// Comparar a quantidade escolhida com a disponível
if (quantidade > quantidadeDisponivel) {
alert(`Quantidade indisponível para tipo ${tipo}!`);
} else {
quantidadeDisponivel -= quantidade;
document.getElementById(`qtd-${tipo}`).textContent = quantidadeDisponivel;
alert('Compra realizada com sucesso!');
}
}
Espero ter ajudado e bons estudos!