Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   PHP (https://www.clubdelphi.com/foros/forumdisplay.php?f=15)
-   -   agregar celdas a una tabla con un boton (https://www.clubdelphi.com/foros/showthread.php?t=32731)

jorgesl 14-06-2006 20:46:47

agregar celdas a una tabla con un boton
 
Hola.

Tengo una tabla en donde, por ejemplo, tengo solamente 1 fila con dos columnas. Lo que quiero hacer, es que cuando el usuario de click a un boton, esas celdas vayan creciendo. ¿como puedo hacerlo?

ya intente haciendo una función:
Código PHP:

        <?
        
function agrega_cirugia()
        {
          echo 
'<td height="63" colspan="10" valign="top">Fecha<br />';
          echo 
"<label>";
          echo  
'<input name="textfield5" type="text" class="Estilo1" />';
          echo 
'</label>';
          echo 
'<p><label></label></p></td>';
          echo 
'<td colspan="4" valign="top"><p>Tipo<br />';
          echo   
'<textarea name="textarea3" cols="40" rows="3" class="Estilo1"></textarea>';
          echo    
"<br />";
          echo 
"</p>";
          echo 
"</td>";
         }
        
?>

Y poniendo un botón:
Código PHP:

<input type="submit" name="Submit" value="Enviar"  onClick="<? agrega_cirugia(); ?>">

Pero no funciona...

Alguien me puede ayudar, se lo agradecería mucho.
(soy muy nuevo en esto de PHP... ¿se nota? :p

D-MO 14-06-2006 21:00:09

Hola, en primero lo que tratas de hacer es llamar a una función de php utilizando un formulario, temo decirte que esto NO SE PUEDE porque es imposible mezclar código que está del lado del servidor en el lado cliente, la alternativa es usar javascript, reemplazando document.write por echo y talvez con algunos arrelgos mas.

saludos.

kayetano 15-06-2006 10:56:55

Hola

D-MO se te olvida la posibilidad de usar AJAX.

chux 15-06-2006 11:10:35

O usar PRADO, que es lo mas similar a lo que quiere hacer, ya que te permite asignar codigo php a determinados eventos, en este caso, el click de un boton.

D-MO 15-06-2006 16:23:53

Cita:

Empezado por kayetano
Hola

D-MO se te olvida la posibilidad de usar AJAX.

Esque AJAX no se ni deletrarlo:rolleyes:

saludos.

jorgesl 15-06-2006 20:15:17

Si pense en ajax, pero me pasa lo mismo que a D-mo...

Alguno me podría dar algun ejemplo sencillo ?
Encontré algo en javascript y si agrega las celdas como quiero, pero la meterle los campos del formulatio, lo que hace es escribir en las celdas el código, no dibujar el cuadro de texto... :p

D-MO 16-06-2006 01:41:20

Cita:

Empezado por jorgesl
...lo que hace es escribir en las celdas el código, no dibujar el cuadro de texto...

pon el código para ver que hace este porque debería de funcionar.

saludos.

jorgesl 19-06-2006 18:47:54

Utilizo la sig. función:


Código:

<SCRIPT LANGUAGE="JavaScript">
function agrega_celda(id){
    var tbody = document.getElementById
(id).getElementsByTagName("TBODY")[0];
    var row = document.createElement("TR")
    var td1 = document.createElement("TD")
    td1.appendChild(document.createTextNode("columna 1"))
    var td2 = document.createElement("TD")
    td2.appendChild (document.createTextNode("columna 2"))
    row.appendChild(td1);
    row.appendChild(td2);
    tbody.appendChild(row);
  }
</script>

y para utilizarlo, hago lo sig:
Código:

<a href="javascript:agrega_celda('mi_tabla')">Agrega nueva</a>
La función, así como está, si funciona perfectamente, pero no tengo idea de como hacer para ir insertando un campo de texto en una fila y en la otra una área de texto....

D-MO 19-06-2006 19:02:10

Hola, prueba con esta funcion:
Código:

<SCRIPT LANGUAGE="JavaScript">
function agrega_celda(id){
    var tbody = document.getElementById(id).getElementsByTagName("TBODY")[0];
    var row = document.createElement("TR")
    var td1 = document.createElement("TD")
    td1.appendChild(document.createElement("INPUT"))
    var td2 = document.createElement("TD")
    td2.appendChild (document.createElement("INPUT"))
    row.appendChild(td1);
    row.appendChild(td2);
    tbody.appendChild(row);
  }
</script>

saludos.

Emilio 19-06-2006 20:46:29

Creo que la forma que menos te va a complicar la vida es que estén todas creadas y con el/los botones que quieras que se vayan visualizando.

Código PHP:

document.getElementByIdel_id_de_tu_objeto ).style.display ='block';
document.getElementByIdel_id_de_tu_objeto ).style.display ='none'

;)


La franja horaria es GMT +2. Ahora son las 05:42:37.

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