PDA

Ver la Versión Completa : agregar celdas a una tabla con un boton


jorgesl
14-06-2006, 20:46:47
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:
<?
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:
<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
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
...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:


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


document.getElementById( el_id_de_tu_objeto ).style.display ='block';
document.getElementById( el_id_de_tu_objeto ).style.display ='none';


;)