2
respostas

Só limpa a caixa de texto caso o resulto for ERROU

<meta charset = "UTF-8">

<input>
<button>Compare com o meu número</button>

<script>

    function verifica(){
        var numeros = [5,6,9,3,4];
        var achou = false;
        for(posicao = 0; posicao < numeros.length ; posicao++ ){
            if(numeros[posicao] == input.value){
                alert("Você ACERTOU");
                achou = true;
                break
            }
        }
        if (achou == false){
            alert("Você ERROU");
        }

        input.value = "";
        input.focus();
    }    

    var input = document.querySelector("input");
    input.focus();
    var button = document.querySelector("button");

    button.onclick = verifica;
</script>
2 respostas

Maria, bom dia!

Poderia específicar o erro? Eu rodei o seu código e a caixa de texto limpou para as duas opções (errou e acertou).

Oi Maria se o que você deseja é que o campo seja limpo somente quando o usuário errar basta mover o trecho de código que limpa o input:

            input.value = "";

Para dentro do bloco do achou == false, ficando assim:

if (achou == false){
            alert("Você ERROU");
            input.value = "";
        }

Espero ter ajudado e bons estudos.