function comprar() {
let tipo = document.getElementById('tipo-ingresso');
let qtd = parseInt(document.getElementById('qtd').value);
verificarNumPositivo();
if (tipo.value == 'pista') {
comprarPista(qtd);
}else if (tipo.value == 'superior'){
comprarSuperior(qtd);
}else {
comprarInferior(qtd);
}
}
function comprarPista(qtd) {
let qtdPista = parseInt(document.getElementById('qtd-pista').textContent);
if (qtd > qtdPista) {
alert('Quantidade indisponível para tipo pista');
} else {
qtdPista = qtdPista - qtd;
document.getElementById('qtd-pista').textContent = qtdPista;
alert('Compra realizada com sucesso!');
}
}
function comprarSuperior(qtd) {
let qtdSuperior = parseInt(document.getElementById('qtd-superior').textContent);
if (qtd > qtdSuperior) {
alert('A quantidade de cadeira superior está indisponível.');
} else {
qtdSuperior = qtdSuperior - qtd;
document.getElementById('qtd-superior').textContent = qtdSuperior;
alert('Compra realizada com sucesso!');
}
}
function comprarInferior(qtd) {
let qtdInferior = parseInt(document.getElementById('qtd-inferior').textContent);
if (qtd > qtdInferior) {
alert('Quantidade indisponível!');
} else {
alert('Compra realizada com sucesso, bom show!');
qtdInferior = qtdInferior - qtd;
document.getElementById('qtd-inferior').textContent = qtdInferior;
}
}
function verificarNumPositivo() {
if (qtd.value <= 0) {
alert('Número inválido, tente novamente!');
return;
}
}
Fazendo o código assim consegui validar que o número não é positvo e apareceu o alert na tela normal. Porém depois aparecia compra realizada com sucesso. Agora fiz o teste com o if sem estar dentro da função verificarNumPositivo() e coloquei direto o if no comprar() funcionou. Não consegui pegar o insight do que aconteceu, se alguém puder me ajudar ficarei grato! =)