Foros del Web » Programando para Internet » Javascript »

Problema al Agregar TR a un TBODY

Estas en el tema de Problema al Agregar TR a un TBODY en el foro de Javascript en Foros del Web. Cordial Saludo, les escribo a ustedes ya que no he podido solucionar un pequeño inconveniente que tengo con la siguiente funcion JavaScript que no funciona ...
  #1 (permalink)  
Antiguo 31/05/2011, 22:35
 
Fecha de Ingreso: marzo-2011
Mensajes: 5
Antigüedad: 13 años, 8 meses
Puntos: 0
Pregunta Problema al Agregar TR a un TBODY

Cordial Saludo,

les escribo a ustedes ya que no he podido solucionar un pequeño inconveniente que tengo con la siguiente funcion JavaScript que no funciona en IE*, pero el Mozilla y Chrome SI:

* Probado en IE9 (Me imagino que en las otras tampoco).
Código Javascript:
Ver original
  1. function addHora() {
  2.  var hora = parseInt(document.horario.tothoras.value);
  3.  hora = (hora + 1);
  4.  var newTR = "<tr>\n";
  5.  if (hora > 3 && (hora - 1) % 3 == 0) {        
  6.   newTR += "<th class='title2' colspan='7'>Descanso</th>\n";
  7.   newTR += "</tr>\n"
  8.   newTR += "<tr>\n";
  9.  }
  10.  newTR += "<th class='title2'>" + hora + "ª Hora</th>\n";
  11.  for (var i = 1; i <= 6; i++) {
  12.   newTR += '<td id="' + dia(i) + "-" + hora + '">\n';
  13.   newTR += tdVacio(dia(i), hora);
  14.   newTR += "</td>\n";
  15.  }
  16.  newTR += "</tr>\n";
  17.  alert('Checkpoint 1');
  18.  alert(newTR);
  19.  document.getElementById("clases").innerHTML = newTR;
  20.  alert('Checkpoint 2');
  21.  document.horario.tothoras.value = hora;
  22. }
El cual se supone agrega un TR con varios TD en la siguiente tabla:
Código HTML:
Ver original
  1. <tr>
  2. <th class="title2" scope="col">Hora</th>
  3. <th class="title2" scope="col">Lunes</th>
  4. <th class="title2" scope="col">Martes</th>
  5. <th class="title2" scope="col">Miercoles</th>
  6. <th class="title2" scope="col">Jueves</th>
  7. <th class="title2" scope="col">Viernes</th>
  8. <th class="title2" scope="col">Sabado</th>
  9. </tr>
  10. <tbody id="clases">
Alguien sabe, cual puede ser el inconveniente??? agradecería cualquier tipo de ayuda.

Les comento que me muestra los mensajes: Checkpoint 1 y el contenido de la variable newTR. pero no sale el mensaje Checkpoint 2.
  #2 (permalink)  
Antiguo 01/06/2011, 20:46
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: Problema al Agregar TR a un TBODY

Trata algo así
Código HTML:
Ver original
  1. <script language="JavaScript">
  2. function function1() {
  3.    document.getElementById('myTable').insertRow(-1).insertCell(-1).innerText = 'Texto añadido';
  4. }
  5. <table id="myTable" border="1" cellspacing="5" cellpadding="5">
  6.    <tr>
  7.        <td width="100">3</td>
  8.        <td width="100">4</td>
  9.    </tr>
  10.    <tr>
  11.        <td>1</td>
  12.        <td>2</td>
  13.    </tr>
  14. <button onclick="function1();">Add a cell</button>
  15. </body>
  16. </html>

Lo tomé de aquí y lo modifiqué http://www.java2s.com/Code/JavaScrip...RowExample.htm
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 01/06/2011, 21:06
 
Fecha de Ingreso: marzo-2011
Mensajes: 5
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Problema al Agregar TR a un TBODY

Gracias por tu respuesta... pues, luego de buscar mas y mas... encontre que el problema es que IE no soporta el innerHTML en algunas etiquetas como el tbody. asi que implemente algo similar a lo que describes y modifique la función.

Todo era cuestión de usar
insertRow(); insertCell(); createElement(); este ultimo para poder crear los TH.

Etiquetas: tbody
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 18:30.