Comunidad de diseño web y desarrollo en internet online

Switch + XML + Valor de una propiedad

Citar            
MensajeEscrito el 04 Ago 2009 03:30 pm
Buenas, acabo de mirar en la busqueda y no encontré nada parecido, a ver si alguien me ayuda a resolver este pequeño problema.

Estoy trabajando en un visor de diapositivas y en algunos casos las diapositivas son texto, en otros son fotos y en otros son fotos panoramicas, estas son cargadas todas desde un XML, tal cual este

Código XML :

   <proyecto id="ap01">
      <descripcion>
         <Titulo>Multiusos</Titulo>
         <Fecha>enero 2009</Fecha>
         <Cliente>Ayuntamiento</Cliente>
      </descripcion>
      <galeria>
         <diapositiva tipo="texto">Blablablabla</diapositiva>
         <diapositiva contenido="imgs/ap01/foto01.jpg" tipo="foto" />
         <diapositiva contenido="imgs/ap01/foto02.jpg" tipo="foto"/>
         <diapositiva contenido="imgs/ap01/foto03.jpg" tipo="foto"/>
         <diapositiva contenido="imgs/ap01/foto04.jpg" tipo="foto"/>
         <diapositiva contenido="imgs/ap01/foto05.jpg" tipo="foto"/>
         <diapositiva contenido="imgs/ap01/foto06.jpg" tipo="foto"/>
         <diapositiva contenido="imgs/ap01/foto07.jpg" tipo="foto"/>
      </galeria>
   </proyecto>


A la hora de parsearlo lo hago mediante for each y queria sacar que tipo de diapositiva es con un Switch, e aqui el código

function crearDiapositiva(proyectoID:String) {
trace("diapositivas de: "+proyectoID+" creadas");
testRemove = new Array();

Código ActionScript :

   for each (proyectoData in xmlData.proyecto) {
      if (proyectoData.@id==proyectoID) {
         for each (var diapositivaData:XML in proyectoData.galeria.diapositiva) {
            switch (diapositivaData.@tipo) {
               case "texto":
                  trace("creando texto");
                  break;
               case "foto" :
                  trace("creando foto");
                  break;
               default:
                  trace (diapositivaData.@tipo) // output : texto foto foto foto foto foto foto foto
break;
            }
         }
      }
   }
}


No entiendo porque no se cumple la condicion en cada caso y siempre se cumple el default. Alguna sugerencia?

Por riolcrt

5 de clabLevel



 

chrome
Citar            
MensajeEscrito el 05 Ago 2009 06:22 am
supongo que tienes que convertirlo en string

Código ActionScript :

switch ([email protected]()) { 
   ...
}

Por Eliseo2

710 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 Ago 2009 02:50 pm
perfecto, gracias : )

Por riolcrt

5 de clabLevel



 

chrome

 

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