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

No me carga el contenido data.txt en html

Estas en el tema de No me carga el contenido data.txt en html en el foro de Frameworks JS en Foros del Web. No me carga el contenido data.txt en html No se que tengo mal. Al presionar el boton deberia de cargar el contenido del .txt llamado ...
  #1 (permalink)  
Antiguo 28/11/2009, 12:25
 
Fecha de Ingreso: agosto-2008
Mensajes: 587
Antigüedad: 15 años, 9 meses
Puntos: 6
No me carga el contenido data.txt en html

No me carga el contenido data.txt en html

No se que tengo mal.

Al presionar el boton deberia de cargar el contenido del .txt llamado data.txt.

Uso Firefox 3.5 ó Explorer 6

Código PHP:
<html>  
  <
head>  
    <
title>An Ajax example</title>  
 
    <
script language "javascript"
      var 
XMLHttpRequestObject false;  
 
       if (
window.XMLHttpRequest) { 
        
XMLHttpRequestObject = new XMLHttpRequest(); 
      } else if (
window.ActiveXObject) { 
        
XMLHttpRequestObject = new  
          
ActiveXObject("Microsoft.XMLHTTP"); 
      } 
 
      function 
getData(dataSourcedivID)  
      {  
        if(
XMLHttpRequestObject) { 
          var 
obj document.getElementById(divID);  
          
XMLHttpRequestObject.open("GET"dataSource);  
 
          
XMLHttpRequestObject.onreadystatechange = function()  
          {  
            if (
XMLHttpRequestObject.readyState == &&  
              
XMLHttpRequestObject.status == 200) {  
                
obj.innerHTML XMLHttpRequestObject.responseText;  
                
                            }  
          }  
 
          
XMLHttpRequestObject.send(null);  
        } 
      } 
    
</script> 
  </head>  
 
  <body> 
 
    <H1>An Ajax example</H1> 
 
    <form> 
      <input type = "button" value = "Fetch the message"  
        onclick = "getData('data.txt', 'targetDiv')">  
    </form> 
 
 
     <div id="targetDiv"> 
      <p>The fetched message will appear here.</p>  
    </div>  
 
  </body>  
</html> 

Última edición por flashtkd; 28/11/2009 a las 12:36
  #2 (permalink)  
Antiguo 01/12/2009, 21:12
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 14 años, 5 meses
Puntos: 65
Respuesta: No me carga el contenido data.txt en html

Cambia esto

Código HTML:
if (XMLHttpRequestObject.readyState == 4 &&  
              XMLHttpRequestObject.status == 200) {  
                obj.innerHTML = XMLHttpRequestObject.responseText;  
                
                            }  
          }  
Por esto

Código HTML:
if (XMLHttpRequestObject.readyState == 4){
  
if(XMLHttpRequestObject.status == 200) {  

                obj.innerHTML = XMLHttpRequestObject.responseText;  
                
                            }  
          }  
  #3 (permalink)  
Antiguo 03/12/2009, 07:28
 
Fecha de Ingreso: agosto-2008
Mensajes: 587
Antigüedad: 15 años, 9 meses
Puntos: 6
Respuesta: No me carga el contenido data.txt en html

le hice el cambio que as mencionado, se puede apreciar en el codigo de abajo, pero no funciona en el IE6 ni tampoco en firefox 3.5.5


Código PHP:
<html>  
  <
head>  
    <
title>An Ajax example</title>  
 
    <
script language "javascript"
      var 
XMLHttpRequestObject false;  
 
       if (
window.XMLHttpRequest) { 
        
XMLHttpRequestObject = new XMLHttpRequest(); 
      } else if (
window.ActiveXObject) { 
        
XMLHttpRequestObject = new  
          
ActiveXObject("Microsoft.XMLHTTP"); 
      } 
 
      function 
getData(dataSourcedivID)  
      {  
        if(
XMLHttpRequestObject
        { 
          var 
obj document.getElementById(divID);  
          
XMLHttpRequestObject.open("GET"dataSource);  
 
          
XMLHttpRequestObject.onreadystatechange = function()  
          {             
           
            if (
XMLHttpRequestObject.readyState == 4)
            {      
                if(
XMLHttpRequestObject.status == 200
                {  
                    
obj.innerHTML XMLHttpRequestObject.responseText;                      
                }  
            }  
              
          }  
 
          
XMLHttpRequestObject.send(null);  
        } 
      } 
    
</script> 
  </head>  
 
  <body> 
 
    <H1>An Ajax example</H1> 
 
    <form> 
      <input type = "button" value = "Fetch the message"  
        onclick = "getData('data.txt', 'targetDiv')">  
    </form> 
 
 
     <div id="targetDiv"> 
      <p>The fetched message will appear here.</p>  
    </div>  
 
  </body>  
</html> 
  #4 (permalink)  
Antiguo 04/12/2009, 11:49
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 14 años, 5 meses
Puntos: 65
Respuesta: No me carga el contenido data.txt en html

O no tenes corriendo el apache, o no estas poniendo en la url localhost/turuta/tuarchivo.php
Por las dudas te dejo mi coddigo que si funciona
Código PHP:
<html>
<
head>
<
title>Funcion AJAX</title>
</
head>
<
body>
<
script type="text/javascript">
var 
xhr;
function 
startAjax(){
    if(
window.ActiveXObject){
        
xhr=new ActiveXObject("Microsoft.XMLHTTP");
    }else if(
window.XMLHttpRequest){
        
xhr=new XMLHttpRequest();
    }
xhr.open("GET","data.txt");
xhr.onreadystatechange=callback;
xhr.send(null);
}
function 
callback(){
    if(
xhr.readyState==4){
        if(
xhr.status==200){
        var 
resp=xhr.responseText;
        var 
div=document.getElementById("targetDiv");
        
div.innerHTML=resp;
        }
    }
}
</script>

<input type="button" value="Fetch the Message" onclick="startAjax();" />
<br /><br />
<div id="targetDiv">
hola
</div>
</body>
</html> 
Solo deberias crear un txt llamado "data"

Última edición por jackson666; 04/12/2009 a las 12:18
  #5 (permalink)  
Antiguo 07/12/2009, 18:49
 
Fecha de Ingreso: febrero-2005
Mensajes: 198
Antigüedad: 19 años, 2 meses
Puntos: 5
Respuesta: No me carga el contenido data.txt en html

Si no estás usando servidor web -es decir lo ejecutas desde un ordenador local- prueba esto:


Código PHP:
function callback(){
    if(
xhr.readyState==4){
        if(
xhr.status==200 || window.location.href.indexOf ("http") == - 1)){
        var 
resp=xhr.responseText;
        var 
div=document.getElementById("targetDiv");
        
div.innerHTML=resp;
        }
    }

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 12:17.