Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/08/2011, 22:25
Avatar de neb642
neb642
 
Fecha de Ingreso: noviembre-2010
Ubicación: Argentina
Mensajes: 29
Antigüedad: 13 años, 5 meses
Puntos: 3
Funciona en IE6 pero no en Firefox

Hola a todos, estoy aprendiendo AJAX. Tengo un código que toma los datos del usuario y realiza la petición a un archivo php. El problema es que con Firefox (version 4) no se ejecuta la funcion de respuesta.


( las instrucciones comienzan con: onClick="GO('asd.php')" )


Código:
<script>
function GO(direccion) {
//Creando el objeto XHR
miXHR = crearXHR();
//PREPARARLO y PREPARAR FORM
miXHR.open('POST', direccion, true);
miXHR.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//FUNCION RESPUESTA
miXHR.onReadyStateChange = function() {
alert('funcion de respuesta');
var divr = document.getElementById('divr');
if (miXHR.readyState==4) {
divr.innerHTML = 'Completado. ' + miXHR.responseText;
}
else
{
divr.innerHTML = 'Cargando...';
}
}
//ENVIO
miXHR.send(datosform());
}


function crearXHR() {
var obXHR= null;
if (window.XMLHttpRequest) {var obXHR = new XMLHttpRequest();} else {
if (window.ActiveXObject) {var obXHR = new ActiveXObject('Microsoft.XMLHTTP');} }
return obXHR;
}

function datosform() {

//[aca va una parte del codigo en donde se recogen los datos del formulario]


alert(cadena);
/*aca la cadena queda:  id=29&motivo=esta loco&sino=2&vencimiento=1992-01-01*/
return cadena;


}
</script>


Como verán:

miXHR.onreadyStateChange = function() {bla bla bla}

ese bla bla bla se ejecuta en IE6, pero no en Firefox.

He intentado tambien:

miXHR.onreadyStateChange = respuesta;
function respuesta() {bla bla bla}

pero tampoco se ejecuta.

Algun consejo? Gracias por leer.