Foros del Web » Programando para Internet » Javascript »

innerhtml

Estas en el tema de innerhtml en el foro de Javascript en Foros del Web. Hola gente! lo que quiero es lo siguiente: Tengo un combo con 2 opciones y una tabla, cada vez que se elija una opción,se tiene ...
  #1 (permalink)  
Antiguo 09/01/2008, 07:09
 
Fecha de Ingreso: julio-2006
Mensajes: 145
Antigüedad: 18 años, 7 meses
Puntos: 0
innerhtml

Hola gente!

lo que quiero es lo siguiente:
Tengo un combo con 2 opciones y una tabla, cada vez que se elija una opción,se tiene que crear una fila nueva en la tabla con unos datos.
Me han dicho que con innerhtml, he estado mirando por ahí un poco y he encontrado esto:
function appendRow()
{
var tbody = document.getElementById("t1").getElementsByTagName ("tbody")[0];
var row = document.createElement("TR");
var cell1 = document.createElement("TD");
cell1.innerHTML = "NEW ";
var cell2 = document.createElement("TD");
cell2.innerHTML = "ROW";
row.appendChild(cell1);
row.appendChild(cell2);
tbody.appendChild(row);
}

no se si me convence mucho porque creo que me limita a la hora de meterle un id dinamico a las nuevas filas creadas.
Alguien que me oriente?

Muchas Gracias.
  #2 (permalink)  
Antiguo 09/01/2008, 10:33
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 23 años
Puntos: 772
Re: innerhtml

Hola mahoni

El código me parece correcto, pero no entiendo a qué te refieres con "me limita a la hora de meterle un id dinamico a las nuevas filas"

Saludos,
  #3 (permalink)  
Antiguo 09/01/2008, 17:50
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 21 años, 3 meses
Puntos: 45
Re: innerhtml

Hola mahoni:

No sé si le llamas 'limitar el meterle un id dinámico a las nuevas filas' a asignarle un atributo id que te dé la gana a cada fila, pero si una fila (elemento TR) es:
var row = document.createElement("TR");
Puedes colocarle id con:
row.setAttribute("id", "loquequieras");
o
row.id = "loquequieras";


No hay problema.
Un saludo.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #4 (permalink)  
Antiguo 10/01/2008, 06:42
Avatar de Calisco  
Fecha de Ingreso: marzo-2004
Ubicación: Neuquen
Mensajes: 732
Antigüedad: 20 años, 11 meses
Puntos: 4
Re: innerhtml

Hace un tiempo me puse la camiseta de mooTools, y creo que una forma de aprende tanto mootools como javascript es implementar una versión en este framework. Así que si les interesa, voy a trascribir este ejemplo para mooTools.
Saludos
Código:
function appendRow() {
      var tbody = $$('.tbody t1')[0];

      var row = new Element ('tr', {id: 'miTr1'});
      var cell1 = new Element ('td', {id: 'miTd1'});
      cell1.setHTML = "NEW ";

      var cell2 = new Element ("td", {id: 'miTd2'});
      cell2.setHTML = "ROW";

      row.injectTop (cell1);
      row.injectTop (cell2);

      tbody.injectTop (row);
}
Bueno, salvo error de sintaxis, este ejemplo hace lo mismo que el script de mahoni y le agrega id al tr y a los dos td; miTr1, miTd1, y miTd2 respectivamente.
Saludos.
__________________
| Cabeza De Raton |
  #5 (permalink)  
Antiguo 10/01/2008, 08:30
 
Fecha de Ingreso: julio-2006
Mensajes: 145
Antigüedad: 18 años, 7 meses
Puntos: 0
Re: innerhtml

Al final lo he conseguido con:
createElement
setAttribute
appendChild
etc

Que maravilla!!!
Me he dado cuenta(otra vez) que lo que me limita es el conocimiento!!!

Gracias a todos.Si alguien quiere ayuda o algun ejemplo que no dude en preguntar.

Gracias de nuevo.
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 20:52.