Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/07/2009, 22:10
lestatminiyo
 
Fecha de Ingreso: junio-2006
Mensajes: 84
Antigüedad: 17 años, 10 meses
Puntos: 1
Pasar una variable de una funcion a otra

Hola, mirad, estoy empezando con el mundillo javascript y este es mi problema

Tengo el siguiente codigo javascript, al cual le paso una URL y un destino.

yo llamo a la funcion así

Código HTML:
<script>loadXMLDoc('url.php', 'Result'); </script>
<div id="Result"></div> 
En teoría, el resultado debe devolverlo a la capa Result
El problema lo tengo con la variable del destino. Entra por el loadXMLDoc, pero no pasa al processchange()
Le podría meter el destino manualmente, pero no me interesa, por que tengo que utilizar varias veces este script con diferentes urls y destinos en la misma página

Código HTML:
<script language="JavaScript">

var req = null;

function loadXMLDoc(url, dest) {
   // Internet Explorer
   try { req = new ActiveXObject("Msxml2.XMLHTTP"); }
   catch(e) {
      try { req = new ActiveXObject("Microsoft.XMLHTTP"); }
      catch(oc) { req = null; }
   }

   // Mozailla/Safari
   if (req == null && typeof XMLHttpRequest != "undefined") {
      req = new XMLHttpRequest();
   }
   // Call the processChange() function when the page has loaded
   if (req != null) {
      req.onreadystatechange = processChange(evt,dest);
      req.open("GET", url, true);
      req.send(null);
   }
}

function processChange(evt, dest) {
   // The page has loaded and the HTTP status code is 200 OK
   if (req.readyState == 4) {
      if (req.status == 200) {
	alert (dest);
      // Write the contents of this URL to the searchResult layer
      getObject(dest).innerHTML = req.responseText;
      }
   }
}

function getObject(name) {
   var ns4 = (document.layers) ? true : false;
   var w3c = (document.getElementById) ? true : false;
   var ie4 = (document.all) ? true : false;
	alert (document.getElementById(name));
   if (ns4) return eval('document.' + name);
   if (w3c) return document.getElementById(name);
   if (ie4) return eval('document.all.' + name);
   return false;
}

</script> 
Muchas gracias