Ir para conteúdo

POWERED BY:

Arquivado

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

WFJ

UL contar elementos

Recommended Posts

Boa tarde,

 

Saberiam me dizer com faço para contar quantos elementos uma determinada lista possue?

 

Tipo.. tenho uma Ul

 

 

<ul id="menu">

 

<li></li>

<li></li>

<li></li>

 

</ul>

 

Queria contar quantos elementos essa UL possue...

 

Já tentei

 

document.menu.elements.lenght;

 

Mas, nada aconteceu!

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

assim vai..

<ul id="menu">
	<li>A</li>	
	<li>B</li>
	<li>C</li>
</ul>
<script>

function contarElementos(){
	var ul_ = document.getElementById("menu");
	var lis = ul_.getElementsByTagName('li');
	return lis.length;	
}

alert(contarElementos());

</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bacana, funcionou.

 

Agora e para eu percorrer esse elementos 1 a 1 por meio do seu indice?

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

fala um laço for usando como parametro o "is.length"...

 

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

O código abaixo está funiconando, porém, quando o laço passa por um </li> filho do UL ele retorna um valor undefined que acaba fazendo com que pareça que o código possua erro.

 

Queria saber como resolver esse problema?

 

O console de erros do firefox sempre aponta essa linha como problematica:

if(document.getElementById(IdObjeto).childNodes[i].id != 'undefined'){

Informando o seguinte:

 

Erro: document.getElementById(IdObjeto).childNodes is undefined

Arquivo-fonte: http://192.168.1.111/wagner_css/index1.php

Linha: 13

 

 

<script language="javascript">

  function ContAba(IdObjeto, IdFilho){
	  
	  var Objeto = document.getElementById(IdObjeto);
	  var lis	= document.getElementById(IdObjeto).childNodes.length;
 
	  for (var i = 0; i <= lis; i ++){	  
			
		  if(document.getElementById(IdObjeto).childNodes[i].id != 'undefined'){
				  
					if(document.getElementById(IdObjeto).childNodes[i].id == IdFilho){
					document.getElementById(IdObjeto).childNodes[i].className='habilitado';
			 }else {
				   document.getElementById(IdObjeto).childNodes[i].className='desabilitado'; 
			 };
		   };  
			 };
		 };

  </script>

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.