El menu se llama SERVICIOS y al darle click aparece un submenu con los servicios, al dar click en algun elemento del submenu me aparece la informacion del servicio y los subservicios que pertenecen al servicio, pero aqui esta el problema, me aparecen todos los subservicios incluso los que no pertenecen al servicio que seleccione.
Como puedo hacer la filtracion?
A continuacion les pongo el script de como esta actualmente, primero carga el submenu, al dar click a cualquier elemento de submenu aparece la informacion referente a ese elemento y debeia aparecer solo los subelementos (por asi decirlo) de ese elemento, pero me salen todos los subelementos.
Código AS3:
Ver original
function CargarMenu()
{
var ldrMenu:URLLoader = new URLLoader();
ldrMenu.addEventListener(Event.COMPLETE, CompleteHandler);
var reqMenu:URLRequest = new URLRequest(url);
ldrMenu.load(reqMenu);
}
function CompleteHandler(e:Event):void
{
datos = new XML(e.target.data);
for (i = 0; i < datos.servicio.length(); i++) {
miBoton = new MovieClip();
miBoton.x = 580;
miBoton.y = 95 + i * 27;
miBoton.buttonMode = true;
miBoton.mouseChildren = false;
stage.addChild(miBoton);
new Tween(miBoton, "alpha", Strong.easeOut, 0, 1, 1, true);
CargarServicios();
}
}
function CargarServicios():void
{
boton = new MenuElemento();
boton.txtMenu.text = datos.servicio.nombre.text()[i];
miBoton.addChild(boton);
Click(i);
}
function Click(num:Number):void
{
miBoton.addEventListener(MouseEvent.CLICK, MostrarServicio);
function MostrarServicio(e:MouseEvent):void
{
details = new MovieClip();
details.x = 30;
details.y = 100;
servicio = new Servicios();
servicio.txtTituloServicio.text = datos.servicio.nombre.text()[num];
servicio.textoClip.txtCuerpoServicio.text = datos.servicio.descripcion.text()[num];
btn = new MovieClip();
btn.x = 820;
btn.y = 5;
btn.buttonMode = true;
cerrar = new BotonCerrar();
stage.removeChild(miBoton);
stage.addChild(details);
details.addChild(servicio);
details.addChild(btn);
CargarHijos();
btn.addChild(cerrar);
new Tween(details, "alpha", Strong.easeIn, 0, 1, 1, true);
new Tween(btn, "alpha", Strong.easeIn, 0, 1, 2, true);
btn.addEventListener(MouseEvent.CLICK, CerrarServicio);
}
}
function CargarHijos():void
{
var ldrHijos:URLLoader = new URLLoader();
ldrHijos.addEventListener(Event.COMPLETE, CompleteHandlerHijos);
var reqHijos:URLRequest = new URLRequest(urlHijos);
ldrHijos.load(reqHijos);
}
function CompleteHandlerHijos(ev:Event):void
{
xmlHijos = new XML(ev.target.data);
for (c = 0; c < xmlHijos.hijo.length(); c++) {
hijo = new MovieClip();
hijo.x = 650;
hijo.y = 128 + (c * 170);
hijo.buttonMode = true;
details.addChild(hijo);
new Tween(hijo, "alpha", Strong.easeIn, 0, 1, 1, true);
llenarHijos();
}
}
function llenarHijos():void
{
loader = new Loader();
loader.load(new URLRequest(xmlHijos.hijo.imggrande.text()[c]));
hijo.addChild(loader);
ClickHijo(c);
}
function ClickHijo(num:Number):void
{
hijo.addEventListener(MouseEvent.CLICK, DetalleHijo);
function DetalleHijo(e:MouseEvent):void
{
detHijo = new MovieClip();
detHijo.x = 30;
detHijo.y = 100;
addChild(detHijo);
serHijo = new Servicios();
serHijo.txtTituloServicio.htmlText = xmlHijos.hijo.nombre.text()[num];
serHijo.textoClip.txtCuerpoServicio.htmlText = xmlHijos.hijo.descripcion.text()[num];
serHijo.textoClip.txtCuerpoServicio.autoSize = TextFieldAutoSize.LEFT;
serHijo.txtTituloServicio.mouseEnabled = false;
serHijo.textoClip.txtCuerpoServicio.mouseEnabled = false;
imgHijo = new MovieClip();
imgHijo.x = 650;
imgHijo.y = 128;
ldrImgHijo = new Loader();
ldrImgHijo.load(new URLRequest(xmlHijos.hijo.imggrande.text()[num]));
btnHijo = new MovieClip();
btnHijo.x = 820;
btnHijo.y = 5;
btnHijo.buttonMode = true;
cerrarHijo = new BotonCerrar();
stage.addChild(detHijo);
detHijo.addChild(serHijo);
detHijo.addChild(imgHijo);
detHijo.addChild(btnHijo);
imgHijo.addChild(ldrImgHijo);
btnHijo.addChild(cerrarHijo);
new Tween(detHijo, "alpha", Strong.easeIn, 0, 1, 1, true);
new Tween(btnHijo, "alpha", Strong.easeIn, 0, 1, 2, true);
btnHijo.addEventListener(MouseEvent.CLICK, CerrarHijo);
}
}
Espero que me puedan ayudar.
Gracias
 
 


