Foros del Web » Programando para Internet » Javascript »

Añadir etiquetas <tr> dinamicamente

Estas en el tema de Añadir etiquetas <tr> dinamicamente en el foro de Javascript en Foros del Web. Buenas, tengo una tabla y estoy intentando añadirle más filas dinámicamente con DOM. Esta es la función, ¿alguien sabe que hago mal? Código: function añadirRegla(){ ...
  #1 (permalink)  
Antiguo 30/06/2009, 04:49
 
Fecha de Ingreso: febrero-2009
Mensajes: 102
Antigüedad: 15 años, 3 meses
Puntos: 1
Añadir etiquetas <tr> dinamicamente

Buenas, tengo una tabla y estoy intentando añadirle más filas dinámicamente con DOM. Esta es la función, ¿alguien sabe que hago mal?

Código:
function añadirRegla(){
	

	var listaS = document.getElementById("tablaS");
	var tr = document.createElement("tr");
	var td1 = document.createElement("td");	
	var td2 = document.createElement("td");	
	var txt = document.createTextNode("hola");	
	var txt2 = document.createTextNode("q tal");	
	td1.appendChild(txt);	
	td2.appendChild(txt2);	
	tr.appendChild(td1);	
	tr.appendChild(td2);
	listaS.appendChild(tr);
	
}
  #2 (permalink)  
Antiguo 30/06/2009, 07:06
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Añadir etiquetas <tr> dinamicamente

En FF funciona... no en IE para variar....

Para que funcione tambien en IE tienes que insertar los tr en el tbody

<tbody id="tablaS">
</tbody>

en este caso no le falta coherencia....

Código HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" type="text/JavaScript">
function añadirRegla(){
	var listaS = document.getElementById("tablaS");
	var tr = document.createElement("tr");
	var td1 = document.createElement("td");	
	var td2 = document.createElement("td");	
	var txt = document.createTextNode("Ahora...");	
	var txt2 = document.createTextNode("Funciona!!!");	
	td1.appendChild(txt);	
	td2.appendChild(txt2);	
	tr.appendChild(td1);	
	tr.appendChild(td2);
	listaS.appendChild(tr);
	
}</script>
</head>

<body>
<input name="inserta" type="button" id="inserta" onClick="añadirRegla()" value="Inserta">
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<tbody id="tablaS">
</tbody>
</table>

</body>
</html> 
Quim

Última edición por quimfv; 30/06/2009 a las 07:14
  #3 (permalink)  
Antiguo 30/06/2009, 08:18
 
Fecha de Ingreso: febrero-2009
Mensajes: 102
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: Añadir etiquetas <tr> dinamicamente

Pues ...a mi sigue sin irme...pero en el IE si que me va!! (Bueno antes también me iba)...¿por qué puede ser? me va a volver loca esto...
  #4 (permalink)  
Antiguo 01/07/2009, 04:24
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Añadir etiquetas <tr> dinamicamente

<tbody id="tablaS">
</tbody>

Has sacado el id de la tabla...

Quim
  #5 (permalink)  
Antiguo 01/07/2009, 05:21
 
Fecha de Ingreso: febrero-2009
Mensajes: 102
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: Añadir etiquetas <tr> dinamicamente

Gracias, al final el problema era otro. Era que el onclick que me llevaba a esa función lo tenía puesto en un <button> y eso hacía que se recargase la página de nuevo y entonces por eso no me salia nada....Pero tras solucionar eso me daba el fallo ese que dices tu con el <tbody> y gracias a tu comentario lo he podido solucionar.

Muchas gracias!!
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 16:27.