- Creo el Array
- Cargo el xml
- Hago el trace del array y me dice undefined
- Hago el trace del array dentro de la función que carga el xml y me devuelve el dato que quiero.
Creo que es un problema de ámbito de la variable, que se pierde y mira que la tengo declarada _global.
Aqui el código:
Código ActionScript :
//Nos aseguramos que se muestren bien los acentos
System.useCodepage = true;
_global.formatos = new Array();
//Creamos el objeto que guardará los datos del archivo XML
formatosXML = new XML();
formatosXML.ignoreWhite = true;
//Cargamos el archivo XML en el objeto recién creado
formatosXML.load("Formatos.xml");
//Cuando termina de cargar lo mandamos a organizar para poder mostrar los datos
formatosXML.onLoad=organizarXML;
function organizarXML(formato){
//=========FORMATOS
//Primer bucle para buscar formatos revisando todos los primeros nodos
for (yy=0;yy<formatosXML.firstChild.childNodes.length;yy++){
//Creamos un objeto para guardar los datos
format = new Object();
format.id = formatosXML.firstChild.childNodes[yy].childNodes[0].firstChild.nodeValue;
format.nombre = formatosXML.firstChild.childNodes[yy].childNodes[1].firstChild.nodeValue;
//Agrego el objeto al array de Formatos
formatos.push(format);
//Elimino el objeto
delete format;
}
}
trace (formatos[0].nombre);
Si no se puede hacer de esta manera, ¿cómo se actua en estos casos? es decir, ¿cómo cargo un array para poder usarlo en otras funciones desde una función distinta?
Thanks
[zah]Usa las etiquetas code para postear código[/zah]
