Um desenvolvedor web está trabalhando em uma aplicação que e...

Próximas questões
Com base no mesmo assunto
Q2319334 Programação
Um desenvolvedor web está trabalhando em uma aplicação que envolve a coleta de dados numéricos dos usuários, e, para isso, está usando HTML e JavaScript (ECMAScript 2020) para criar um campo de entrada de texto e um botão. Quando um usuário clicar nesse botão, o valor inserido será processado. Nesse cenário, considere que esse desenvolvedor quer obter o valor atual do campo de texto HTML com o ID idade.
Para obter esse valor, ele deve utilizar o seguinte fragmento de código JavaScript: 
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito Comentado:

A alternativa correta é a C - document.getElementById(“idade”).value.

Para entender o motivo que torna essa alternativa correta, é importante compreender como funciona a interação entre o JavaScript e o HTML através do DOM (Document Object Model), que é uma representação da página web que permite a linguagem de programação modificar o conteúdo, a estrutura e o estilo da página.

Quando queremos acessar um elemento específico do HTML, podemos utilizar o método getElementById para selecionar um elemento pelo seu atributo id. Em seguida, para recuperar o valor que o usuário inseriu em um campo de entrada de texto, como um <input> ou <textarea>, utilizamos a propriedade value.

Portanto, o trecho de código document.getElementById(“idade”).value está correto pois segue essa lógica: primeiro acessa o elemento pelo ID 'idade' e, em seguida, obtém o valor atual (aquele digitado pelo usuário) desse campo.

As outras alternativas falham por diversos motivos:

  • A alternativa A utiliza um método inexistente getText() para obter o valor de um elemento.
  • A alternativa B usa innerHTML, que é utilizado para obter ou definir o conteúdo HTML interno de um elemento, o que não é aplicável para um campo de entrada onde estamos interessados no valor digitado pelo usuário.
  • A alternativa D erra ao usar getElementByName, que não é um método válido. O correto seria getElementsByName, e mesmo assim, ele retorna uma coleção de nós (NodeList) e não um único elemento.
  • Por fim, a alternativa E utiliza document.querySelector(“#idade”).text, que não é correto pois a propriedade text não é usada para obter o valor de campos de entrada. Além disso, para selecionar um elemento pelo id com querySelector, o seletor está correto, mas a propriedade a ser acessada deveria ser value, não text.

Compreendendo esses pontos, é possível entender por que a alternativa C é a única correta e como interagir corretamente com elementos de entrada em um formulário HTML usando JavaScript.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Por se tratar de um campo de entrada de texto (que é um input), a forma de pegar seu valor é por meio do "value".

Sobram as alternativas C e D.

document.getElementByName(“idade”) pega os elementos que possuem o atributo "name = idade", como por exemplo <input type="radio" name="idade" value="10"/>. O input da questão só possui o atributo "id".

Gabarito C

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo