Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] Acceder valor celda - Table (html)

Estas en el tema de Acceder valor celda - Table (html) en el foro de Javascript en Foros del Web. Hola, tengo una tabla que tiene en algunos campos filas agrupadas, no puedo recorrer la tabla por el numero de filas. Lo que he hecho ...
  #1 (permalink)  
Antiguo 07/12/2014, 13:41
 
Fecha de Ingreso: octubre-2011
Mensajes: 206
Antigüedad: 13 años
Puntos: 1
Acceder valor celda - Table (html)

Hola,

tengo una tabla que tiene en algunos campos filas agrupadas, no puedo recorrer la tabla por el numero de filas.

Lo que he hecho es crear un <tbody> para cada agrupación de filas. Con ese codigo obtengo el numero de tbody (agrupaciones).

Código PHP:
var filas=document.getElementsByTagName('tbody');
 for (var 
1filas.lengthi++) {
var 
id=document.getElementById('id').value;

Todos los tbody tienen un elemento llamado Id. ¿Como puedo acceder al valor de esos elementos Id? Por ejemplo al id del tbody[2]
He probado id=filas[i].getElementById('id').value; pero no vale..



Gracias. Un saludo

Última edición por dasapa; 07/12/2014 a las 13:48
  #2 (permalink)  
Antiguo 07/12/2014, 15:34
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: Acceder valor celda - Table (html)

Haces mal al asignar más de un </tbody> a la tabla, no es correcto pues la tabla solo puede tener un cuerpo. En tal caso, podrías diferencias a los grupos de filas mediante clases. Teniendo esta estructura, solamente tendrías que indicar la clase de la fila, el número de fila de las que poseen dicha clase y ya será más sencillo acceder a alguna de sus celdas.

Primero corrige lo de la estructura y solo si no logras obtener el resultado que deseas, vuelves y nos preguntas.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #3 (permalink)  
Antiguo 07/12/2014, 15:54
 
Fecha de Ingreso: octubre-2011
Mensajes: 206
Antigüedad: 13 años
Puntos: 1
Respuesta: Acceder valor celda - Table (html)

La tabla tiene 4 columnas, el problema es que en la 1 y 4 columna solo hay una fila pero en las dos columnas centrales hay dos filas agrupadas.

Para mi cada registro tiene 6 valores (1+2+2+1). Lo de poner un <tbody> para cada registro ha sido para cambiar el background color si tbody es par o impar. Si lo hacía por tr (odd-even) las filas centrales cambiaban de color y no quería eso.

Aunque solo cree un tbody en la tabla voy a tener el mismo problema, el número de filas es el doble (agrupo siempre dos en las columnas centrales) que el numero de registros.

Ahora necesito recorrer cada tbody y con esos datos generar un txt-xml pero me he quedado aquí colgado...

Si que he visto que con el siguiente codigo obtengo los registros de todos los tbody pero necesito el valor para guardarlo en una vairable.

filas[i].childNodes[0].innerHTML;

Código PHP:
<tbody>
<
tr>
<
td rowspan="2"><input value="a"></input></td>
<
td rowspan="1"><input value="b"></input></td>
 <
td rowspan="1"><input value="b"></input></td>
<
td rowspan="2"><input value="a"></input></td>
</
tr>

<
tr>
<
td rowspan="1"><input value="b"></input></td>
 <
td rowspan="1"><input value="b"></input></td>
</
tr>

</
tbody
Gracias. Un saludo
  #4 (permalink)  
Antiguo 07/12/2014, 16:45
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 6 meses
Puntos: 1485
Respuesta: Acceder valor celda - Table (html)

Cita:
Iniciado por Alexis88 Ver Mensaje
Haces mal al asignar más de un </tbody> a la tabla, no es correcto pues la tabla solo puede tener un cuerpo.
buenas...
solo para aclarar un punto. de acuerdo al DTD de HTML 4.01 Strict, se puede tener mas de un cuerpo en la tabla. dudo que haya cambiado para html5.
Código:
<!ELEMENT TABLE - -
     (CAPTION?, (COL*|COLGROUP*), THEAD?, TFOOT?, TBODY+)>
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #5 (permalink)  
Antiguo 07/12/2014, 16:52
 
Fecha de Ingreso: octubre-2011
Mensajes: 206
Antigüedad: 13 años
Puntos: 1
Respuesta: Acceder valor celda - Table (html)

Estoy viendo y es valido, ademas hay un parametro para localizar los tbodies.

http://www.w3schools.com/jsref/coll_table_tbodies.asp

Creo que lo conseguire...jeje
  #6 (permalink)  
Antiguo 07/12/2014, 16:54
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 7 meses
Puntos: 1284
Respuesta: Acceder valor celda - Table (html)

Hola:

Me extrañó la afirmación:

Cita:
Iniciado por Alexis88 Ver Mensaje
Haces mal al asignar más de un </tbody> a la tabla, no es correcto pues la tabla solo puede tener un cuerpo.

...
...una o más secciones de cuerpo de tabla...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #7 (permalink)  
Antiguo 07/12/2014, 17:44
 
Fecha de Ingreso: octubre-2011
Mensajes: 206
Antigüedad: 13 años
Puntos: 1
Respuesta: Acceder valor celda - Table (html)

Al fin...

lo dejo por si alguien le interesa:

Código PHP:
 var tableReg document.getElementById('Mitabla');
 var 
filas=tableReg.getElementsByTagName('tbody');
 for (var 
0filas.lengthi++) {
 var 
var2=tableReg.tBodies[i].rows[0].cells[2].childNodes[0].value;  //Accedo en cada tbody a la celda 2 de la fila 0

Un saludo

Etiquetas: celda, table, valor
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 00:59.