Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Damiluke

[Resolvido] identificação de elementos

Recommended Posts

Olá,

Aguêm me pode dizer porque este pedaço de codigo dá erro quando é executado?

var elemento = document.getElementById("Rid"+op);var numElementos = form1.elemento.length;

onde op = "Catalogos"

Por outras palavras o que estou a tentar fazer é algo do tipo

var numElementos = form1.RidCatalogos.length

em que 'RidCatalogos' é o nome de um Radio Group pertencente ao formulário 'form1'

Desde já obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você deve estudar um pouco sobre DOM (Document Object Model), tutoriais são encontrados facilmente na Internet.

 

Esta maravilhosa função(getElementById) foi criada para facilitar a nossa vida. Ela serve para termos acesso diretamente a um elemento pelo seu Id. Você está confundindo o acesso por "nome do elemento" com acesso através de Ids.

 

Voltando a sua pergunta:

var elemento = document.getElementById("Rid"+op);var numElementos = form1.elemento.length;

 

Usando acesso por nome do elemento ou nó:

 

Use:

document.nomedoform.nomedoradiogroup.propriedadeOUmetodo;
"document" quer dizer que você está se referindo a um elemento que está na mesma página.

 

Ex:

var numElementos = document.form1.RidCatalogos.length;
Mas, RadioGroup tem "Length"? Eu não lembro...

 

Acessa por nome, depois que você estudar DOM usa o

document.getElementById("Id do elemento");
Certo? http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

 

Um abraço! :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mais uma vez gostaria que alguem me explicasse porque o código 'var numElementos = form1.elemento.length;' detecta o numero de radio buttons quando no formulário existem pelo menos dois desses elementos e quando existe apenas um dá 'undefined'.

 

Como resolver essa situação?

 

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Damiluke,Você deseja saber a quantidade de radion buttons ou a quantidade de elementos do form?Se for a quantidade de radio buttons ao invés de :

var numElementos = form1.elemento.length;
use:
document.getElementsByName('elemento').length;

(...)detecta o numero de radio buttons quando no formulário existem pelo menos dois desses elementos e quando existe apenas um dá 'undefined'.(..)

Quando há apenas um elemento com o mesmo nome, ele é retornado, quando há mais de um é retornado um Array de elementos (por isso o length funciona apenas no segundo caso)Obs.: o metodo getelementsbyname sempre retorna um array de elementos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.