Comunidad de diseño web y desarrollo en internet online

Preguntilla rapida de XML

Citar            
MensajeEscrito el 29 May 2009 07:56 am
Hola a tod@s!

¿Como puedo contar el numero de attributos que contiene un nodo?:

Aki un ejemplo:

<nodo label = "CARPETA1">
<nodo label = "GALERIA1" foto1="Imagen1.jpg" foto2="Imagen2.jpg" foto3="Imagen3.jpg" foto4="Imagen1.jpg"/>
</nodo >

De aquí obtendríamos que el número de fotos son 4.

Me gustaría saber en cada momento cuántas imágenes tiene (en este caso) el nodo "GALERIA1" ya que el número de fotos es variable en cada elemento del componente tree que lee el xml.

Gracias de antemano!

Por cotk

61 de clabLevel



 

safari
Citar            
MensajeEscrito el 29 May 2009 10:15 am
Cuando accedes a la propiedad "attributes" de un nodo de XML te devuelve un objeto con todos los atributos, por lo tanto puedes crear una función para contar la cantidad de atributos comunes que tiene un node XML. por ejemplo en tu XML podríamos acceder a los atributos del nodo como:

Código ActionScript :

var atributos:Object = tuXML.firstChild.childNodes[0].attributes;


Por lo tanto con esta función:

Código ActionScript :

function objectLenght(obj:Object, str:String):Number{
   
   var parameter:String;
   var cont:Number = 0;
   
   for(parameter in obj){
      
      if(parameter.indexOf(str) >= 0 || str == "all"){
      
         cont++;
      
      }
      
   }
   
   return cont;
   
}


Podríamos contar atributos de esta manera:

Código ActionScript :

trace(objectLenght(atributos, "foto")); // Dará como resultado 4
trace(objectLenght(atributos, "label")); // Dará como resultado 1
trace(objectLenght(atributos, "all")); // Dará como resultado 5
trace(objectLenght(atributos, "url")); // Dará como resultado 0

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.