Comunidad de diseño web y desarrollo en internet online

Enlace de Datos entre dos ComboBox

Citar            
MensajeEscrito el 19 Nov 2005 12:12 am
hola! espero alguien pueda ayudarme, necesito usar dos combobox cargados con ciertos datos, y que el primero combo box actualice al segundo dependiendo de la opción que se elija en el primero y después al elegir la opción en el segundo que este te cargue un movieclip externo, no he podido encontrar la forma de hacerlo y tengo una base de datos algo extensa...

agaradeceré mucho cualquier ayuda!

gracias!

Por nyxo

20 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 19 Nov 2005 05:23 am

Código :

var cbCategorias:mx.controls.ComboBox;
var cbOpciones:mx.controls.ComboBox;

//categorias
var categorias:Array = new Array({label:"Libros",data:0},{label:"Peliculas",data:1},{label:"Musica",data:2});

var cbCategoriasListener:Object = new Object;
var cbOpcionesListener:Object = new Object;
var libro:Array = new Array({label:"Essential Actionscript 2",data:"libro1.swf"},{label:"Flash Hacks",data:"libro2.swf"},{label:"Contenidos Dinamicos: Flash+PHP+MySQL",data:"libro3.swf"});
var pelicula:Array = new Array({label:"Exsorcismo a Emily Rose",data:"pelicula1.swf"},{label:"La guerra de los mundos",data:"pelicula2.swf"},{label:"La Casa de Cera",data:"pelicula3.swf"});
var musica:Array = new Array({label:"Tool",data:"musica1.swf"},{label:"A Perfect Circle",data:"musica2.swf"},{label:"Haggard",data:"musica3.swf"});


//Evento al seleccionar en el ComboBox de Categorias
cbCategoriasListener.change = function (objeto:Object){
   
   // esto es solo motivo de ejemplo, aqui deberia mandar
   // una variable a php,asp u otro similar no se que estas usando
   // y llenar un solo arreglo y cuando recibas los datos
   // actualizas el proveedor :P algo como:
   // var miArreglo:Array = new Array();
   // mientras alla datos
   // miArreglo.push({label:"una etiqueta", data:"undato.swf"})
   // fin mientras
   /// cbOpciones.dataProvider = miArreglo;
   switch(objeto.target.selectedItem.data){
      case 0: cbOpciones.dataProvider=libro; break;
      case 1: cbOpciones.dataProvider = pelicula;   break;
      case 2:  cbOpciones.dataProvider = musica;    break;
   }
}

//Evento al seleccionar una opcion
cbOpcionesListener.change = function (objeto:Object){
   //aqui deberias sustituir trace por loadMovie :P
   trace(objeto.target.selectedItem.data);
}
cbOpciones.addEventListener("change",cbOpcionesListener);
cbCategorias.addEventListener("change",cbCategoriaListener);
cbCategorias.dataProvider = categorias;


lee los comentarios :P

saludos ^^

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 19 Nov 2005 09:37 pm
gracias!por la respuesta! oye, habrà forma de poder ver el swf o el fla? o un ejemplo de como queda, realmente esto me ha dado muchos problemas :)
gracias!

Por nyxo

20 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 19 Nov 2005 09:50 pm
ok lo siento, habia cambiado unos identificadores y por eso no funcionaba :S , solo coloca dos combobox con nombre de instancia cbCategorias y cbOpciones, y cambia estas lineas:

var cbCategoriasListener:Object = new Object();
var cbOpcionesListener:Object = new Object();
///////////
cbCategorias.addEventListener("change",cbCategoriasListener);


saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 20 Nov 2005 08:07 pm
Ya conocen la clase Binding?



Esa es la mejor solución(Requiere conocimientos de programación y OOP). :wink:

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

firefox

 

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