Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

11
respostas

Desafio com INPUT - Dúvida

boa noite, por que essa parte do meu codigo está errada? ps: coloquei os inputs tudo certinho em cima mas aqui so vou colocar a parte de js para voces visualizarem melhor.. nessa parte eu pretendo fazer assim: colocar para o usuario digitar um valor e pressionar o botão depois para ele armazenar no vetor.. ai depois ele coloca um segundo valor e aperta o botão novamente para armazenar o segundo valor no vetor e por ai vai.. ate chegar ao 6 e chegando no 6 ele mostra os valores que constam no array! obrigada.

11 respostas
var numero_digitados = [];
for (m=0 ; m<=5 ;m++) {
     numero_digitados.push(document.getElementById('numero').value);
     if (numero_digitados.length == 6) {
         alert(numero_digitados);
     }
};


var adivinhar = document.getElementById("adivinhar");
adivinhar.onclick = numero_digitados();

Nas próxima vezes, tente postar o código assim, pois facilita a leitura.

var numero_digitados = [];
for (m=0 ; m<=5 ;m++) { 
    numero_digitados.push(document.getElementById('numero').value);
    if (numero_digitados.length == 6) { 
        alert(numero_digitados);
     }
 };

var adivinhar = document.getElementById("adivinhar");
adivinhar.onclick = numero_digitados();

No código que você postou não existe a função numero_digitados(), portanto quando o usuário clicar no botão não será executada nenhuma função.

Esse código deve funcionar, não pude testar mas deve te ajudar.

var numeros_clicados = [];
var clicou = function () {
    if(numeros_clicados.length==6) {
        alert(numeros_digitados);
    }
    else {
        numeros_digitados.push(document.getElementById('numero').value);
    }
}

var adivinhar = document.getElementById("adivinhar");
adivinhar.onclick = numeros_digitados();

Acabei de perceber um erro, use esse código.

var numeros_digitados = [];
var clicou = function () {
    if(numeros_digitados.length==6) {
        alert(numeros_digitados);
    }
    else {
        numeros_digitados.push(document.getElementById('numero').value);
    }
}

var adivinhar = document.getElementById("adivinhar");
adivinhar.onclick = clicou();

e esse passar de 6 ele irá acrescentar no vetor também? no caso nao teria que estar num for para não ocorrer isso?

Utilizando o for, o loop será executado sempre que o usuário clicar. É melhor trocar numeros_digitados.length==6 por numeros_digitados.length>=6.

ah massa! :) vou testar e ver se assim dá certo.. voce tem outro meio de comunicação?

tenho email: sriwinstein@gmail.com, mas é melhor postar as dúvidas aqui, porque mais gente pode responder.

verdade! :)

para mim fazer com o prompt foi super facil, com o input eu nao estou conseguindo muito bem, senti um pouco de dificuldade.. e nao queria avançar nos estudos sem conseguir fazer pelo input! :p

Winstein, ele não está parando no sexto click :S voce sabe como posso resolver isso? para limitar até o sexto clique..

Posta todo o código aqui, o html e o js.