Foros del Web » Creando para Internet » Flash y Actionscript »

ambito de una variable

Estas en el tema de ambito de una variable en el foro de Flash y Actionscript en Foros del Web. tengo el siguiente codigo: Cita: var jj:XML = new XML(); var llenar:String; jj.ignoreWhite = true; jj.load("calendario.xml"); jj.onLoad = function() { _root.totaldias = jj.firstChild.attributes.total; for (xx=0; ...
  #1 (permalink)  
Antiguo 09/02/2007, 15:09
Avatar de jair20x  
Fecha de Ingreso: noviembre-2005
Ubicación: Madrid - España
Mensajes: 532
Antigüedad: 19 años
Puntos: 1
ambito de una variable

tengo el siguiente codigo:

Cita:
var jj:XML = new XML();
var llenar:String;
jj.ignoreWhite = true;
jj.load("calendario.xml");
jj.onLoad = function() {
_root.totaldias = jj.firstChild.attributes.total;
for (xx=0; xx<_root.totaldias; xx++) {
llenar = jj.firstChild.childNodes[xx].attributes.texto;
_root.calendario["f"+xx].fecha = "0"+xx;
_root.calendario["f"+xx].texto = llenar;
}

};
trace(_root.totaldias);

quiero mostrar la variable "totaldias" pero me sale undefine
supuestamente al poner: _root.totaldias deberia funcionar en cualquier parte del codigo, solo cuando esta dentro de la funcion me muestra el dato deseado

como puedo hacer para que mi variable se vea de forma global??
Saludos
  #2 (permalink)  
Antiguo 09/02/2007, 15:30
 
Fecha de Ingreso: septiembre-2006
Mensajes: 1.193
Antigüedad: 18 años, 1 mes
Puntos: 30
Re: ambito de una variable

pero totaldias que es un numero una cadena...?

si es numero

var totaldias:Number = jj.firstChild.attributes.total;

y el trace metelo dentro del onLoad

Código:
jj.onLoad = function() {
var totaldias:Number = jj.firstChild.attributes.total;

trace(totaldias);
for (xx=0; xx<_root.totaldias; xx++) {
llenar = jj.firstChild.childNodes[xx].attributes.texto;
_root.calendario["f"+xx].fecha = "0"+xx;
_root.calendario["f"+xx].texto = llenar;
}

};
por que se esta ejecutando primero trace y despues onload
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:43.