Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > HTML, Javascript y otros
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-09-2007
halizia halizia is offline
Miembro
 
Registrado: abr 2006
Posts: 116
Poder: 19
halizia Va por buen camino
Ajax + insetando filas en tabla

hola a todos!

quisiera hacer que se me vaya refrescando una tabla en Ajax, pero que me vaya insertando filas. Hasta ahora lo que hago es actualizar una celda, pero lo que quisiera es que esa tabla fuese insertando filas, hasta llegar a un límite.

¿Se puede hacer esto en AJAX?

Adjunto el código:

Código PHP:
<?php
require ('../xajax_core/xajax.inc.php');

    
$xajax = new xajax(); 
    
    function 
vcc($isCaps,$res){
        if ((
$isCaps%2)==0){
            
$text='<td width="70">'.$isCaps.'</td>';
        }else{
            
$text='<td width="70">LINEAL</td>';
        }
        
$res=$res.$text;
        
$objResponse = new xajaxResponse();
        
$objResponse->assign("vcc","innerHTML",$res);
        
        return 
$objResponse;
    }
    
     function 
pcc($isCaps,$res){
    
        if ((
$isCaps%2)==0){
            
$algo='<td width="70">LINEAL</td>';
        }else{
            
$algo='<td width="70">lineal</td>';
        }
        
$res=$res.$algo;
        
$objResponse = new xajaxResponse();
        
$objResponse->assign("pcc","innerHTML",$res);
        
        return 
$objResponse;
    }
    
    
$xajax->registerFunction("vcc");
    
$xajax->registerFunction("pcc");
    
$xajax->processRequest();

    echo 
'<?xml version="1.0" encoding="UTF-8"?>';
    
    
$xajax->printJavascript('../');
?>
    <script type='text/javascript'>
        /* <![CDATA[ */
        var texto;
             window.onload = function() {
            // call the helloWorld function to populate the div on load
            xajax_vcc(0,'');
            xajax_pcc(0,'');
        }
        var i=0;
        var j=0;
        
        //i=i+1;
        setInterval("xajax_vcc(i++,texto)",1000);
        setInterval("xajax_pcc(j++,texto)",1000);
        /* ]]> */
    </script>    

<table border='1'><tr><td>PCC</td><td>VCC</td></tr><tr><td width="70"><div id="pcc" name="pcc"><? echo "pcc"?></div></td>
<td width="70"><div id="vcc" name="vcc"><? echo "vcc"?></div></td>
</tr></table>
    <br/>
Saludos!!
Responder Con Cita
  #2  
Antiguo 07-09-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

No es tanto "AJAX" sino JavaScript, creo yo, vamos. Pero sí, pueden añadirse filas a una tabla, y creo que hay varias formas de conseguirlo... yo propongo una que puede que no sea la mejor, pero, en fin, allá va:

Código PHP:
<html>
 <
head>
  <
script type="text/javascript">
    function 
AppendRow(idTable,htmlContent){
      var 
document.getElementById(idTable);
      if(
t){
        var 
document.createElement('tr');
        var 
document.createElement('td');
        
c.innerHTML htmlContent;
        
r.appendChild(c);
        
t.appendChild(r);
      }
      return 
true;
    }     
  
</script>
 </head>
 <body>
  <table id="mytable"></table>
  <a href="#" onclick="AppendRow('mytable','<h1>HTML Content</h1>');">AppendRow</a>
 </body>
</html> 
* El código es HTML y JavaScript, lo encierro entre etiquetas PHP para que se resalte mejor únicamente.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 07-09-2007
Avatar de Emilio
*Emilio* Emilio is offline
Capo
 
Registrado: may 2003
Ubicación: Palma de Mallorca
Posts: 2.635
Poder: 10
Emilio Va por buen camino
Cita:
Empezado por dec Ver Mensaje
No es tanto "AJAX" sino JavaScript, creo yo, vamos.
Dec, lo que pretende halizia es que le vaya refrescando los datos, por tanto con javascript poco vamos a lograr, en este caso sí hay que tirar de Ajax para lograrlo.

Yo puse un ejemplito sencillo, creo que anda por el foro

Si no, pues ya lo ponemos de nuevo.
__________________
Saludos
Emilio
Responder Con Cita
  #4  
Antiguo 07-09-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Bueno. No me expliqué bien. Yo asumía que halizia ya recoge la respuesta que le llega a través del objeto "XmlHttpRequest" (AJAX), y lo que necesitaba no era tanto ayuda en este sentido, sino en cómo insertar celdas a una tabla HTML (cosa que puede hacer en el momento en que recibe la respuesta susomentada, por ejemplo).

Pero, vamos, en todo caso no creo que venga mal un ejemplo... aunque la compañera tenga que adaptarlo a su uso, pues me parece que utiliza alguna librería para tratar con el objeto "XmlHttpRequest". Lo que no sé es dónde puede andar dicho ejemplo...
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Insertar filas en Tabla(word) Loviedo Servers 2 14-11-2007 00:12:40
php+ajax+ie halizia HTML, Javascript y otros 1 06-09-2007 13:47:00
Ajax dayrontbs HTML, Javascript y otros 0 29-08-2007 20:04:41
AJAX, el comienzo. papulo HTML, Javascript y otros 10 02-07-2007 10:49:25
Como recorrer una tabla uniendo el contenido de dos filas Javi2 SQL 4 14-02-2005 10:30:14


La franja horaria es GMT +2. Ahora son las 16:00:14.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi