Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/02/2006, 12:55
Avatar de PumasCampeon
PumasCampeon
 
Fecha de Ingreso: junio-2004
Ubicación: @gs.mx
Mensajes: 240
Antigüedad: 20 años, 5 meses
Puntos: 0
xml a array:object

Hola :°( tengo un problema: Resulta que estoy trayendo datos de un xml y los intento meter en un array, si carga los datos de mi file.xml y dentro de algunas functions hago el paso para vaciarlos en el vector pero no los mete:

// que me falta aqui:
Código:
var numEdecanes = 0;		//Se lee del XML
// var arrayEdecanes = new Array ();
var todasLasEdecanes = new Array();//Vector para guardar edecanes del XML
/**************************************************************/
var myXML = new XML();		//Objeto XML
myXML.load("edecanes.xml");//Lee archivo XML
myXML.ignoreWhite = true;	//ingnora los espacios del xml entre un campo y otro.
myXML.onLoad = loadedXML;	//Al terminar, ejecuta funcion
/**************************************************************/
function laEdecan(p1, p2, p3, p4, p5, p6) {
	this.numero = p1;	//Numero de edecan
	this.texto = p2;	//Nombre de edecan
	this.op1 = p3;		//Opcion 1
	this.op2 = p4;		//Opcion 2
	this.op3 = p5;		//Opcion 3
	//this.correcto = p6;	//Opcion correcta
	this.tema = p6		//Categoria de edecan
	this.ya = 0;		//0 no ha sido vista, 1 ya fue vista
	trace ('laEdecan: '+this.texto)
}
/**************************************************************/
function loadedXML() {
	allText = myXML.firstChild;				//Lee todo el archivo
	a = allText.firstChild;					//Lee el primer nodo
	arrayEdecanes = allText.childNodes;	//Hace el array de edecanes, Total final num: ...27
	numEdecanes = arrayEdecanes.length;	//Evalua el no de edec. en el archivo, ...27
	for (var i = 0; i<numEdecanes; i++) {
		Edecan = a.childNodes;		//Genera Vector y vacia variables
		num = parseInt(Edecan[0].firstChild.toString());
		tex = Edecan[1].firstChild.toString();
		op1 = Edecan[2].firstChild.toString();
		op2 = Edecan[3].firstChild.toString();
		op3 = Edecan[4].firstChild.toString();
		tm = parseInt(Edecan[5].firstChild.toString());
		/* --> AQUI ESTA EL PROBLEM <-- */
		// no mete las variables al Array !!!
		todasLasEdecanes[i] = new laEdecan(num, tex, op1, op2, op3,tm);
		a = a.nextSibling;		//Lee Proximo nodo
	}
}
// no traza nada
trace (todasLasEdecanes.length)
.... Un alma carita-tiva graXs!
__________________
lo que se es una gota de lluvia, comparado con tu inmenso mar :-)