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

Problema con ejemplo simple en AJAX

Estas en el tema de Problema con ejemplo simple en AJAX en el foro de Frameworks JS en Foros del Web. Hola, empece a leer sobre AJAX y estoy haciendo un ejemplo simple como para terminar de entender su funcionamiento basico. Este es el codigo: Ajax.html: ...
  #1 (permalink)  
Antiguo 18/07/2009, 14:34
 
Fecha de Ingreso: junio-2009
Mensajes: 34
Antigüedad: 15 años, 5 meses
Puntos: 0
Pregunta Problema con ejemplo simple en AJAX

Hola, empece a leer sobre AJAX y estoy haciendo un ejemplo simple como para terminar de entender su funcionamiento basico. Este es el codigo:

Ajax.html:
Código:
<script src="ajax.js" language="JavaScript"></script>

Valor1: <input type=text id="texto1"><br>
Valor2: <input type=text id="texto2"><br>

<input type=button value="Enviar" onclick="sendGET();">

<div id=contenedor></div>
Ajax.js:
Código:
function crearXMLHttpRequest() {
	var xmlHttp=null;
	if (window.ActiveXObject) {
    		xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
  	} else {
    		if (window.XMLHttpRequest) {
      			xmlHttp = new XMLHttpRequest();
		}
	}
	return xmlHttp;
}

var conexion1 = crearXMLHttpRequest();

function procesarEventos() {
	var contenedor = document.getElementById("contenedor");
	if (conexion1.readyState == 4) {
		contenedor.innerHTML = conexion1.responseText;
  	} else {
		contenedor.innerHTML = "Cargando...";
	}
}

function sendGET() {
	var t1, t2;     // variables que contendran los valores de los campos a mandar
	
	t1 = document.getElementById("texto1").value;
	t2 = document.getElementById("texto2").value;

	conexion1.open("GET", "ajax1.php?texto1="+t1+"&texto2="+t2, true);
	conexion1.onreadystatechange = procesarEventos();
	conexion1.send(null);
}
Ajax1.php:
Código:
<?php

if (isset($_GET["texto1"]) and isset($_GET["texto2"])) {
	echo "Informacion recibida";
}

?>
El problema es que cuando apreto el boton que esta en Ajax.html, el div "contenedor" pasa a tener el texto "Cargando...", lo cual esta bien, pero se queda ahi y nunca llega a tener el texto "Informacion recibida".

Pareceria ser que la propiedad readyState del objeto conexion1 nunca llega a tener el valor 4.

Alguien puede ayudarme?

Saludos.
  #2 (permalink)  
Antiguo 19/07/2009, 05:42
Avatar de Legoltaz  
Fecha de Ingreso: agosto-2008
Mensajes: 325
Antigüedad: 16 años, 3 meses
Puntos: 6
Respuesta: Problema con ejemplo simple en AJAX

conexion1.onreadystatechange = procesarEventos;

Sin los paréntesis.

O bien:

conexion1.onreadystatechange = function(){
procesarEventos();
}
  #3 (permalink)  
Antiguo 19/07/2009, 17:01
 
Fecha de Ingreso: junio-2009
Mensajes: 34
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Problema con ejemplo simple en AJAX

Gracias! Problema solucionado.
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 06:05.