você está aqui: Home  → Arquivo de Mensagens

Notação para referenciar variáveis em JavaScript

Colaboração: Rogerio Acquadro

Data de Publicação: 01 de Abril de 2009

Desenvolvendo um pequeno sistema em PHP precisei criar uma função JavaScript que checasse se o usuário tivesse escolhido alguma opção de um conjunto de checkboxes (campos obrigatórios). Eis que me deparei com um problema de notação.

No formulário haviam outros campos obrigatórios, como "nome", tipo texto. Ao me referir a esses campos na função Javascript, usei a notação abaixo:

  < form id="myForm" action="/">
  < div>< input name="nome" type="text"></div>
  </form>
  
  var myForm = document.getElementById("myForm");
  var nome = myForm.nome;

Entretanto, quando usei o recurso de checkboxes, o nome da variável dentro do formulário era sucedido por colchetes, pois a saída deste tipo de variável é uma matriz.

  < form id="myForm" action="/">
  < div>
  < input name="foo[]" type="checkbox" value="1">
  < input name="foo[]" type="checkbox" value="2">
  < input name="foo[]" type="checkbox" value="3">
  </div>
  </form>

A notação que utilizara anteriormente, para o campo nome, não era mais válida. Os colchetes são caracteres reservados. Para poder validar a variável existe uma segunda notação que pode ser utilizada como abaixo:

  var inputs = myForm["foo[]"];
Rogerio Acquadro trabalha com software livre desde 1996 e é sócio da (PC)² Consultoria (http://www.pc2consultoria.com)

Novidade em interface pessoal

Colaboração: Marcelo

Para quem sempre sonhou em ter o computador "à mão" o tempo todo, esse dia parece estar chegando.

Vale a pena assistir ao vídeo (em inglês).



 

 

Veja a relação completa dos artigos de Rogerio Acquadro

Opinião dos Leitores

Rodolfo Jorge Nemer Nogueira
21 Dez 2011, 10:52
Muito esclarecedor amigo! Também enfrentei o mesmo problema em um projeto recente. Muito obrigado por compartilhar seus conhecimentos!

Abraços,
Rodolfo Jorge Nemer Nogueira
UFPR - Música / Curitiba Paraná
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script