Foros del Web » Programando para Internet » Javascript » Frameworks JS »

pasar variable entre funciones

Estas en el tema de pasar variable entre funciones en el foro de Frameworks JS en Foros del Web. Hola a Tod@s: Tengo una dificultad y es la que sigue: Tengo el siguiente codigo Código HTML: request = false; if (window.XMLHttpRequest) { request = ...
  #1 (permalink)  
Antiguo 06/02/2007, 07:05
Avatar de Torus  
Fecha de Ingreso: enero-2002
Ubicación: Tú buscame y me encontraras
Mensajes: 413
Antigüedad: 22 años, 3 meses
Puntos: 0
Pregunta pasar variable entre funciones

Hola a Tod@s:
Tengo una dificultad y es la que sigue:
Tengo el siguiente codigo
Código HTML:
request = false;

if (window.XMLHttpRequest) {
	request = new XMLHttpRequest();
}



function EnvioDatosModificar(pagina,modificar_hijo,devolucion) {
var pagina2=pagina;
var modificar_hijo2=modificar_hijo;
var devolucion2=devolucion;
	if (window.ActiveXObject) {
    	try {
            request = new ActiveXObject("Msxml2.XMLHTTP");
        } catch(e) {
            try {
                request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch(e) {
                request = false;
            }
        }
    }

    if (request) {
		

        request.onreadystatechange = ProcessEnvioDatosModificar;
       		
		request.open("GET", "paginas_modificar_inc.php?pagina="+pagina2+"&modificar_hijo="+modificar_hijo2+"&devolucion="+devolucion2,true);

		
        request.send(null);
    }
}
///PROCESO DE AÑADIR FOTOS
function ProcessEnvioDatosModificar() {
    

    if (request.readyState == 4) {
        if (request.status == 200) {
		var result = document.getElementById	(devolucion2);
			
            result.innerHTML = request.responseText;
			
						
        }
    } else {
		
        traer.innerHTML =  "<img src=\"img_propio/cargando_ajax.gif\" alt=\"dd\" width=\"16\" height=\"16\" align=\"absmiddle\">Procesando ...";
    }
}
Como podeis ver yo le paso a la funcion EnvioDatosModificar(pagina,modificar_hijo,devoluci on)
Los dos primero son datos como el id y el numero de pagina, pero el ultimo es donde yo quiero que muestre el resultado, y es aqui donde me encuentro con el problema.
devolucion2 si contiene valores en la funcion EnvioDatosModificar pero yo lo necesito en la funcion ProcessEnvioDatosModificar() para indicarle donde colocar dicha informacion (que por cierto es texto), pero quí se pierde el valor.
¿como puedo hacer esto?
Gracias de antemano por vuestra paciencia
Saludos
__________________
Hay tanto que aprender y tan poco tiempo
  #2 (permalink)  
Antiguo 06/02/2007, 09:20
Avatar de andresq  
Fecha de Ingreso: enero-2007
Ubicación: Chiapas, México
Mensajes: 161
Antigüedad: 17 años, 3 meses
Puntos: 1
Re: pasar variable entre funciones

pues pasale los mismos valores a la otra funcion, o declara variables globales, o mandalo a llamar terminando la primera funcion, espero y esto sirva
Código PHP:
request false;

if (
window.XMLHttpRequest) {
    
request = new XMLHttpRequest();
}



function 
EnvioDatosModificar(pagina,modificar_hijo,devolucion) {
var 
pagina2=pagina;
var 
modificar_hijo2=modificar_hijo;
var 
devolucion2=devolucion;
    if (
window.ActiveXObject) {
        try {
            
request = new ActiveXObject("Msxml2.XMLHTTP");
        } catch(
e) {
            try {
                
request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch(
e) {
                
request false;
            }
        }
    }

    if (
request) {
        

        
request.onreadystatechange ProcessEnvioDatosModificar;
               
        
request.open("GET""paginas_modificar_inc.php?pagina="+pagina2+"&modificar_hijo="+modificar_hijo2+"&devolucion="+devolucion2,true);

        
        
request.send(null);
    }
//PRUEBA ESTO             ProcessEnvioDatosModificar(pagina,modificar_hijo,devolucion);
}
///PROCESO DE AÑADIR FOTOS
function ProcessEnvioDatosModificar() {
    

    if (
request.readyState == 4) {
        if (
request.status == 200) {
        var 
result document.getElementById    (devolucion2);
            
            
result.innerHTML request.responseText;
            
                        
        }
    } else {
        
        
traer.innerHTML =  "<img src=\"img_propio/cargando_ajax.gif\" alt=\"dd\" width=\"16\" height=\"16\" align=\"absmiddle\">Procesando ...";
    }

  #3 (permalink)  
Antiguo 06/02/2007, 12:44
Avatar de Torus  
Fecha de Ingreso: enero-2002
Ubicación: Tú buscame y me encontraras
Mensajes: 413
Antigüedad: 22 años, 3 meses
Puntos: 0
Re: pasar variable entre funciones

Hola andresq, antes de nada agradecerte tu respuesta.
He probado a meter esto como tu decias
Código HTML:
ProcessEnvioDatosModificar(pagina,modificar_hijo,devolucion);
en la misma posicion donde tu lo dejaste, me sigue dando error "devolucion no definido".
He probado con meter la variable en la linea
Código HTML:
request.onreadystatechange = ProcessEnvioDatosModificar(devolucion2);
Y ahora no me da ese error pero me da el de " 'undefined' es nulo o no es un objeto ".
¿Como puedo solucionarlo?
Gracias de nuevo
Un cordial Saludo
__________________
Hay tanto que aprender y tan poco tiempo

Última edición por Torus; 07/02/2007 a las 06:35
  #4 (permalink)  
Antiguo 06/02/2007, 22:26
 
Fecha de Ingreso: octubre-2006
Mensajes: 31
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: pasar variable entre funciones

tengo el mismo problema pero al final , me doy ...

pro cierto eso no se podra hacer con clases o algo asi ????
  #5 (permalink)  
Antiguo 07/02/2007, 09:00
Avatar de Torus  
Fecha de Ingreso: enero-2002
Ubicación: Tú buscame y me encontraras
Mensajes: 413
Antigüedad: 22 años, 3 meses
Puntos: 0
Re: pasar variable entre funciones

Ya lo he solucionado, como decia andresq simplemente poniendo la variable como global y !voila!.
Torpe que es uno
Muchas gracias
Saludos cordiales
__________________
Hay tanto que aprender y tan poco tiempo
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 19:57.