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

Primiparo en AJAX.... cual es el error?

Estas en el tema de Primiparo en AJAX.... cual es el error? en el foro de Frameworks JS en Foros del Web. Hola amigos foreros.... Estoy recien incursionando en el mundo de AJAX guiado por un manual. Probando un ejercicio no me ha dado la respuesta esperada ...
  #1 (permalink)  
Antiguo 26/09/2011, 12:42
 
Fecha de Ingreso: junio-2004
Ubicación: Ciudad de Panama
Mensajes: 551
Antigüedad: 19 años, 10 meses
Puntos: 8
Pregunta Primiparo en AJAX.... cual es el error?

Hola amigos foreros....

Estoy recien incursionando en el mundo de AJAX guiado por un manual.

Probando un ejercicio no me ha dado la respuesta esperada

Este es el codigo
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional //EN" "http://www.w3.org/TR/xhtml1-transitional.dtd">
<
html>
  <
head>
    <
title>Ejemplo02 AJAX</title>
    <
script type="text/javascript">

      var 
net = new Object();

      
net.READY_STATE_UNINITIALIZED 0;
      
net.READY_STATE_LOADING 1;
      
net.READY_STATE_LOADED 2;
      
net.READY_STATE_INTERACTIVE 3;
      
net.READY_STATE_COMPLETE 4;

      
net.CargadorContenidos = function(urlfuncionfuncionError) {
           
this.url url;
           
this.req null;
           
this.onload funcion;
           
this.onerror = (funcionError) ? funcionError this.defaultError;
           
this.cargaContenidoXML(url); 
      }

      
net.CargadorContenidos.prototype = {
           
cargaContenidoXML:function(url) {
               if (
window.XMLHttpRequest) {
                  
this.req = new XMLHttpRequest();
               }
               else if (
window.ActiveXObject) {
                     
this.req = new ActiveXObject("Microsoft.XMLHTTP");
               }
               if (
this.req) {
                  try {
                    var 
loader this;
                    
this.req.onreadystatechange = function () {
                       
loader.onReadyState.call(loader);
                    }

                    
this.req.open('GET'urltrue);
                    
this.req.send(null);
                  } catch(
err) {
                      
this.onerror.call(this);
                  }
               }
           },
           
onReadyState:function () {
              var 
req this.req;
              var 
ready this.readyState;
              if (
ready == net.READY_STATE_COMPLETE) {
                 var 
httpStatus req.status;
                 if (
httpStatus == 200 || httpStatus == 0) {
                    
this.onload.call(this);
                 }
                 else {
                    
this.onerror.call(this);
                 }
              }
           },
           
defaultError:function () {
              
alert ("Se ha producido un error al obtener los datos: "
                     
"\n\n readyState: " this.req.readyState
                     
"\n Status: " this.req.status
                     
"\n headers: " this.req.getAllResponseHeaders());
           }
        }

      function 
mostrarContenido() {
         
alert(this.req.responseText);
      }

      function 
cargaContenidos() {
         var 
cargador = new net.CargadorContenidos("http://localhost/ajax/holamundo.txt"mostrarContenido);
      }

      
window.onload cargaContenidos;
    
</script>
  </head>
  <body>
  </body>
</html> 
El problema que he detectado y no se como resolver es el siguiente:

En la funcion
Código PHP:
           onReadyState:function () {
              var 
req this.req;
              var 
ready this.readyState;
              if (
ready == net.READY_STATE_COMPLETE) {
                 var 
httpStatus req.status;
                 if (
httpStatus == 200 || httpStatus == 0) {
                    
this.onload.call(this);
                 }
                 else {
                    
this.onerror.call(this);
                 }
              }
           }, 
la variable ready al hacer un alert aparece como indefinida y supongo que si la condicion if (ready == net.READY_STATE_COMPLETE) no se cumple se iria por el else { this.onerror.call(this) pero tampoco la ejecuta...

Me podrian ayudar a resolverlo?

Mil Gracias de antemano

Un Cordial Saludo.
  #2 (permalink)  
Antiguo 26/09/2011, 13:15
 
Fecha de Ingreso: junio-2004
Ubicación: Ciudad de Panama
Mensajes: 551
Antigüedad: 19 años, 10 meses
Puntos: 8
Respuesta: Primiparo en AJAX.... cual es el error?

Listo papa.....

Ya solucione el lio.... en la funcion onReadyState cambie la linea var ready = this.readystate por var ready = req.readystate

Gracias

Etiquetas: ajax
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 15:20.