Ir para conteúdo

POWERED BY:

Arquivado

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

mr_baqueta

length do document.getElementById()

Recommended Posts

2 exemplos que fazem a mesma coisa, mas preciso fazer dinamicamente usando o getelements ... mas não dá certo... alguma idéia?

 

 

<div id="teste">111</div>

<div id="teste">222</div>

<div id="teste">333</div>

 

<script language="javascript">

 

//isso funciona

alert(teste.length);

for (i=0; i < teste.length; i++) {

teste.style.display = 'none';

}

//isso nao funciona

alert(document.getElementById("teste").length);

for (i=0; i < document.getElementById("teste").length; i++) {

document.getElementById("teste").style.display = '';

}

</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

O atributo ID das tags devem ser distintos. Não é possível ter vários itens na página, com o mesmo ID. você teria que usar o getElementsByTagName, depois verificar se o ID destes elementos contém "teste". Exemplo:

 

<div id="naoteste1">abc2</div>

<div id="teste1">111</div>

<div id="naoteste2">abc1</div>

<div id="teste2">222</div>

<div id="teste3">333</div>

 

<script language="javascript">

var divs = document.getElementsByTagName("div");

alert(divs.length);

for (var i = 0; i < divs.length; i++)

{

if (divs.getAttribute("id").substring(0,5) == "teste")

divs.style.display = "";

}

</script>

 

 

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

obrigado cara, resolvi da forma como você me disse, mas acho estranho que funcione colocando o nome direto do objeto em vez do GetElements ... mas mesmo assim valeu pela dica, resolveu meu chabu...

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.