Foros del Web » Programando para Internet » Javascript »

Duplicar tabla desde funcion.

Estas en el tema de Duplicar tabla desde funcion. en el foro de Javascript en Foros del Web. hola a todos Es posible que una funcion duplique una tabla en mi pagina. Supongamos que tengo una sola tabla en el comienzo de la ...
  #1 (permalink)  
Antiguo 23/03/2006, 06:47
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 18 años, 4 meses
Puntos: 15
Duplicar tabla desde funcion.

hola a todos

Es posible que una funcion duplique una tabla en mi pagina.
Supongamos que tengo una sola tabla en el comienzo de la pagina y con esa funcion hacer que aparezca una "exactamente igual" debajo.
Yo lo estoy haciendo creando las tablas como OCULTAS y luego lo que hago es DESOCULTARLAS pero mi problema es que el archivo se hace demasiado grande (400 kb). Así que estoy buscando otra opcion para que las tablas se creen cuando el usuario las necesita (y sino que no se creen)
Espero haberme hecho entender.

saludos
gracias
  #2 (permalink)  
Antiguo 23/03/2006, 16:25
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 18 años, 4 meses
Puntos: 15
Hola
he encontrado este codigo y me funciona y lo entiendo para adaptarlo a mi pagina. Pero el problema es que cuando crea la tabla quita todo lo que habia en la pagina (absolutamente todo, inclusive el boton con el ejecuto la accion)
¿¿ Como hago para que la cree debajo del boton??

CODE

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<script>
function ACCION()
{
document.write ("<table border='2'><tr><td>texto </td><td>texto</td></tr></table><table border='2'><tr><td>texto </td><td>texto</td></tr></table>");
}


</script>
<input type="button" name="Button" value="Button" onClick="ACCION()">
</body>
</html>
  #3 (permalink)  
Antiguo 23/03/2006, 16:37
Avatar de uamistad  
Fecha de Ingreso: diciembre-2004
Ubicación: Cd. de México
Mensajes: 1.395
Antigüedad: 19 años, 4 meses
Puntos: 1
Se me ocurre que mejor podrías escribir en un DIV, ejemplo aquí.


Código HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<script>
function ACCION()
{
document.getElementById("escribeAqui").innerHTML = "<table border='2'><tr><td>texto </td><td>texto</td></tr></table><table border='2'><tr><td>texto </td><td>texto</td></tr></table>";
}


</script>
<input type="button" name="Button" value="Button" onClick="ACCION()">
<div id="escribeAqui"></div>
</body>
</html> 
__________________
"Di no al Internet Explorer" -Proverbio Chino-
  #4 (permalink)  
Antiguo 23/03/2006, 16:40
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Si, poner document.write con la página cargada no es lo mejor...

Si quieres clonar una tabla, puedes usar cloneNode (cosas del DOM)

function duplicar() {
var nuevaTabla = document.getElementById("tabla").cloneNode(true);
document.body.appendChild(nuevaTabla);
}

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 24/03/2006, 04:20
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 18 años, 4 meses
Puntos: 15
Lo estoy probando
muchas gracias
saludos
  #6 (permalink)  
Antiguo 24/03/2006, 06:38
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 18 años, 4 meses
Puntos: 15
Cita:
Iniciado por caricatos
Si, poner document.write con la página cargada no es lo mejor...

Si quieres clonar una tabla, puedes usar cloneNode (cosas del DOM)

function duplicar() {
var nuevaTabla = document.getElementById("tabla").cloneNode(true);
document.body.appendChild(nuevaTabla);
}

Saludos
hola a todos

Si andas por ahí Caricatos. He usado tu funcion y me ha ido de maravilla.
Solo una cosa. Como puedo hacer para ocultar esa tabla nueva que he creado. O sea una vez que se crea el usuario la utiliza pero despues necesito ocultarla de nuevo. He probado con

document.getElementById('tabla').style.display ='none';

pero solo borra el original pero no el duplicado
.saludos
  #7 (permalink)  
Antiguo 24/03/2006, 06:43
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Tienes razón. Es que se duplica todo, incluso el id (un fallo tonto)... tendrías que asignarle otro id...

function duplicar() {
var nuevaTabla = document.getElementById("tabla").cloneNode(true);
nuevaTabla.id = "nuevaTabla";
document.body.appendChild(nuevaTabla);
}

Y se ocultaría con:

document.getElementById('nuevaTabla').style.displa y ='none';

Si se van a clonar más de una tabla, sería mejor ponerle algo así:
tabla = 0;
nuevaTabla.id = "tabla" + tabla++;

saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #8 (permalink)  
Antiguo 24/03/2006, 07:00
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 18 años, 4 meses
Puntos: 15
muchas gracias
saludos
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 21:34.