Foros del Web » Programando para Internet » Jquery »

Mostrar contenido de una fila en otra tabla

Estas en el tema de Mostrar contenido de una fila en otra tabla en el foro de Jquery en Foros del Web. Saludos a la comunidad resulta en un datatable muestro un listado de ciertos item's con sus atributos y estos se pueden editar hasta ahí todo ...
  #1 (permalink)  
Antiguo 22/11/2014, 23:04
 
Fecha de Ingreso: septiembre-2013
Mensajes: 57
Antigüedad: 10 años, 6 meses
Puntos: 0
Pregunta Mostrar contenido de una fila en otra tabla

Saludos a la comunidad

resulta en un datatable muestro un listado de ciertos item's con sus atributos y estos se pueden editar hasta ahí todo bien (tabla general por asi decirlo), pero a su vez cada item tiene otro listado de item's con atributos que pueden ser modificados se puede decir que son sub-item's, entonces mi duda esta es en como podria yo visualizar los sub-item's de un item de la tabla general, en otra tabla; no se si pueda hacerlo debajo del item ahi mismo en la tabla general o si cuando haga clic en un item me carge otra tabla con los sub-items que tiene el item al que se hizo clic

por si esta confuso xD

item-1 ---->sub- item-1.1
sub- item-1.2
sub- item-1.3

item-2 ----> sub- item-2.1
sub- item-2.2
sub- item-2.3

item-3 ----> sub- item-3.1
sub- item-3.2
sub- item-3.3

entonces los item's 1,2 y 3 son de la tabla general pero los sub-item's son los que quiero visualizar cuando se de clic sobre su item padre pero no se como seria lo ideal si debajo de su item padre en la tabla general o en otra tabla nueva para ser editados tambien porque acá http://www.datatables.net/examples/api/row_details.html el ejemplo solo muestra una sub-informacion, se podria hacer algo pero para que se edite
Nota: en mi caso yo tengo un data table con conferencias pero cada conferencia tiene una cantidad de ponencias y pues tanto conferencias como ponencias sus atributos pueden ser modificados por ello busco como visualizar las ponencias lo mejor y comodo posible por que es info a leer de la BD

gracias y espero hacerme entender

Última edición por dilan_snoopy; 22/11/2014 a las 23:12
  #2 (permalink)  
Antiguo 23/11/2014, 03:22
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Mostrar contenido de una fila en otra tabla

Podrías tener dos filas para cada ítem, en una iría el ítem y sus opciones de edición y, en la segunda, los sub-ítems, organizados dentro de otra tabla. Esta segunda fila estaría oculta y tendría un identificador único, de este modo, en la primera fila, tendrías un botón que, al pulsarlo, ejecutaría una función en la cual tomarías a la fila de abajo mediante el identificador que le hayas asignado y, según sea su estado de visibilidad, la muestres u ocultes.

Código HTML:
Ver original
  1.     <thead>
  2.         <tr>
  3.             <th>ÍTEM</th>
  4.             <th>OPCIONES</th>
  5.         </tr>
  6.     </thead>
  7.     <tbody>
  8.         <tr>
  9.             <td>Ítem 1</td>
  10.             <td>
  11.                 <button onclick = "mostrarOcultar('id_1')">Mostrar/Ocultar</button>
  12.             </td>
  13.         </tr>
  14.         <tr class = "oculta" id = "id_1">
  15.             <td colspan = "2">
  16.                 <table>
  17.                     <thead>
  18.                         <tr>
  19.                             <th>SUB-ÍTEM</th>
  20.                             <th>OPCIONES</th>
  21.                         </tr>
  22.                     </thead>
  23.                     <tbody>
  24.                         <tr>
  25.                             <td>Sub-ítem 1</td>
  26.                             <td>
  27.                                 <button>Editar</button>
  28.                             </td>
  29.                         </tr>
  30.                         <tr>
  31.                             <td>Sub-ítem 2</td>
  32.                             <td>
  33.                                 <button>Editar</button>
  34.                             </td>
  35.                         </tr>    
  36.                         <tr>
  37.                             <td>Sub-ítem 3</td>
  38.                             <td>
  39.                                 <button>Editar</button>
  40.                             </td>
  41.                         </tr>
  42.                     </tbody>
  43.                 </table>
  44.             </td>
  45.         </tr>
  46.         <tr>
  47.             <td>Ítem 2</td>
  48.             <td>
  49.                 <button onclick = "mostrarOcultar('id_2')">Mostrar/Ocultar</button>
  50.             </td>
  51.         </tr>
  52.         <tr class = "oculta" id = "id_2">
  53.             <td colspan = "2">
  54.                 <table>
  55.                     <thead>
  56.                         <tr>
  57.                             <th>SUB-ÍTEM</th>
  58.                             <th>OPCIONES</th>
  59.                         </tr>
  60.                     </thead>
  61.                     <tbody>
  62.                         <tr>
  63.                             <td>Sub-ítem 4</td>
  64.                             <td>
  65.                                 <button>Editar</button>
  66.                             </td>
  67.                         </tr>
  68.                         <tr>
  69.                             <td>Sub-ítem 5</td>
  70.                             <td>
  71.                                 <button>Editar</button>
  72.                             </td>
  73.                         </tr>
  74.                         <tr>
  75.                             <td>Sub-ítem 6</td>
  76.                             <td>
  77.                                 <button>Editar</button>
  78.                             </td>
  79.                         </tr>    
  80.                     </tbody>
  81.                 </table>
  82.             </td>
  83.         </tr>
  84.     </tbody>

Código CSS:
Ver original
  1. .oculta{
  2.     display: none;
  3. }

Código Javascript:
Ver original
  1. function mostrarOcultar(id){
  2.     var fila = document.getElementById(id);
  3.  
  4.     if (getComputedStyle(fila).display == "none"){
  5.         fila.style.display = "table-row";
  6.     }
  7.     else{
  8.         fila.style.display = "none";
  9.     }
  10. }

DEMO

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

Etiquetas: contenido, fila, tabla
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 11:09.