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

Não reconhece o textContent, não acontece a saída do valor no formulário.

if (altura != 0) {
  var imc = peso / (altura * altura);

  var tdImc = document.getElementById("imc-2");
  tdImc.textContent = imc;

  console.log(imc);
} else {
  console.log("Não executei porque altura eh igual a zero");
}
5 respostas

Olá Hugo,

como está o seu código HTML? Pode ser que ele não esteja encontrando o elemento com id imc-2.

Boa tarde, Hugo! Tudo certo, cara? =)

Você poderia mostrar aqui o que é impresso no seu console?

Além disso, posta também o restante do seu código, por favor... Incluindo o HTML e o JS. =)

Fábio

O html está exatamente como o professor passou no curso, está tudo de acordo, porém não tem a saída com o textContent, como se não estivesse reconhecendo esta saída.

Hugo, coloca aqui o HTML, para verificarmos! Talvez você tenha deixado escapar algo que só outros olhos acharão (acontece toda hora!).

solução!

No caso de um formulário, para atribuir um valor para um campo input do tipo text, por exemplo, você não usa o "textContent", você usa a propriedade "value". Pelo código, você quer imprimir o valor numa coluna de uma tabela (

)

Você precisa deixar o seu console aberto e recarregar a página. Tem que aparecer alguma coisa, ou aparece "Não executei porque altura eh igual a zero", ou o valor do IMC.

Se nada aparece no console, nem mensagem de erro, pode ocorrer que não está entrando neste bloco de código (por exemplo, você pode estar executando esse código dentro de um loop)

Utilize o console.log para imprimir os valores antes de executar o IF, isso vai ajudar a identificar onde está o problema.

Possíveis erros:

  • Altura não é maior que zero
  • Peso não é maior que zero
  • As variaveis estão com valores, mas você não tem um elemento com id "imc-2" (por isso não imprime na tabela)
  • As variaveis tem valores, mas ocorre um erro ao fazer a conta.