Foros del Web » Programando para Internet » Javascript »

Ambito de las variables en archivo externo...

Estas en el tema de Ambito de las variables en archivo externo... en el foro de Javascript en Foros del Web. Bueno, una vez solucionado un problema viene otro, y no es que no me canse de probar distintas alternativas, pero como estoy aprendiendo, pues me ...
  #1 (permalink)  
Antiguo 17/01/2010, 07:55
 
Fecha de Ingreso: enero-2010
Mensajes: 11
Antigüedad: 14 años, 9 meses
Puntos: 0
Ambito de las variables en archivo externo...

Bueno, una vez solucionado un problema viene otro, y no es que no me canse de probar distintas alternativas, pero como estoy aprendiendo, pues me cuesta un poco.

A ver, tengo esto:

archivo .js externo linkeado:

Asi no funciona:

Código:
var day_act=document.getElementById("fechadia").value;

function comprobar_fecha_ico(){

    alert(day_act);
}
Asi si funciona:

Código:
function comprobar_fecha_ico(){

    var day_act=document.getElementById("fechadia").value;
    alert(day_act);
}

Ahora os explico el "programa". "fechadia" es el id de un select cuyo valor al cargar la pagina es el que coincide con la fecha actual cargada por php...

Es decir, cuando yo abro la pagina, en ese select hoy aparece 17, en otro select aparecera enero ("fechames") y en otro 2009("fechaano"). Bien Lo que a mi me interesa es que cuando se abra la pagina se guarde la fecha mostrada en los select en tres variables, day_act es la primera variable, que es la que pongo en el ejemplo.

Despues, dentro de una funcion invocada onclick ("comprobar_fecha_ico()") vere si la fecha es actual, anterior o posterior, nada mas.

Bien, por eso quiero cargar una variable fuera de todas las funciones, para que se carge al cargar la pagina y se quede almacenada hasta que se ejecute la funcion que sea... y no se como hacerlo, puesto que al declarar la variable fuera de la funcion me devuleve "undefined" en el alert...

Como debo hacerlo...¿?¿?

Gracias por leer esto al menos
  #2 (permalink)  
Antiguo 17/01/2010, 07:59
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 8 meses
Puntos: 772
Respuesta: Ambito de las variables en archivo externo...

Hola Darknessfeatsunny

Me parece que estás cargando el valor en la variable (var day_act=document.getElementById("fechadia").value; ) antes de que exista fechadia

Prueba poniendo esto fuera de cualquier función:


Código javascript:
Ver original
  1. var day_act;

Y cuando termine de cargar la página, lees el valor:

Código javascript:
Ver original
  1. <body onload="day_act=document.getElementById('fechadia').value">;

Saludos,
  #3 (permalink)  
Antiguo 17/01/2010, 08:04
 
Fecha de Ingreso: enero-2010
Mensajes: 11
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Ambito de las variables en archivo externo...

vale, el archivo que contiene esos select no tiene body, ya que proviene de un include de php, son secciones de un menu, y solo se carga esa seccion cuando le doy a la opcion del menu determinda
...

como lo puedo hacer pues...
  #4 (permalink)  
Antiguo 18/01/2010, 00:39
 
Fecha de Ingreso: diciembre-2009
Mensajes: 438
Antigüedad: 14 años, 10 meses
Puntos: 16
Respuesta: Ambito de las variables en archivo externo...

Por lo que dices supongo que lo estarás haciendo con Ajax. Pues puedes asignar la variable cuando recibas la respuesta de la petición Ajax.

Etiquetas: ambito, externo, variables
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 20:37.