Foros del Web » Programando para Internet » PHP » CodeIgniter »

Añadir class en add_row de Clase Table de codeigniter

Estas en el tema de Añadir class en add_row de Clase Table de codeigniter en el foro de CodeIgniter en Foros del Web. Buenas, estoy usando la librería Table de codeigniter para crear una tabla, y añado las filas con add_row($items), donde $items es un array de elementos, ...
  #1 (permalink)  
Antiguo 19/04/2012, 04:52
 
Fecha de Ingreso: diciembre-2008
Mensajes: 116
Antigüedad: 15 años, 4 meses
Puntos: 0
Añadir class en add_row de Clase Table de codeigniter

Buenas, estoy usando la librería Table de codeigniter para crear una tabla, y añado las filas con add_row($items), donde $items es un array de elementos, la pregunta que me surge es ¿se puede con add_row añadir un estilo (class) a toda una fila (tr)?
He visto en la documentación que se puede añadir clase a un elemento (td), pero quisiera saber si es posible añadir la clase a toda la fila.

Saludos.
  #2 (permalink)  
Antiguo 19/09/2012, 22:06
 
Fecha de Ingreso: agosto-2008
Mensajes: 8
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Añadir class en add_row de Clase Table de codeigniter

Al parecer add_row no permite tal cosa, cuando mucho (sin modificar o extender la libreria),
puedes usar set_template, para especificar la clase en el TR del header, y para los TR pares e impares.

Harias algo como sigue:
Código PHP:
$tmpl=array('row_start' => '<tr class="MiClase">','row_alt_start'=>'<tr class="MiClase">');

$this->table->set_template($tmpl); 
De esta forma todos los rows tendrian la clase "MiClase"

Se define la plantilla para
Código:
row_start
y
Código:
row_alt_start
, para asi aplicar la clase tanto a los tr pares como impares.

Si ademas quieres que se agregue la clase al row de los headers tendrias que especificar en el template
Código:
heading_row_start
Estos son todos los valores que soporta la plantilla y sus valores por default:
Código PHP:
'table_open' => '<table border="0" cellpadding="4" cellspacing="0">',

'thead_open' => '<thead>',
'thead_close' => '</thead>',

'heading_row_start' => '<tr>',
'heading_row_end' => '</tr>',
'heading_cell_start'    => '<th>',
'heading_cell_end' => '</th>',

'tbody_open' => '<tbody>',
'tbody_close' => '</tbody>',

'row_start' => '<tr>',
'row_end'     => '</tr>',
'cell_start' => '<td>',
'cell_end' => '</td>',

'row_alt_start' => '<tr>',
'row_alt_end'            => '</tr>',
'cell_alt_start' => '<td>',
'cell_alt_end'  => '</td>',

'table_close' => '</table>' 
Cabe señalar que solo se modificaran los valores que su envies, de los que no, usara el default :)

La desventaja de esto es que solo puedes asignar 2 clases diferentes (una para renglones pares y otra para impares). Si por alguna razon necesitas asignar N clases diferentes (digamos con un valor incremental) si tendrías que modificar la libreria table para cumplir con tus requerimientos.

Saludos !

Última edición por jozeunico; 20/09/2012 a las 08:26

Etiquetas: add_row, class, fila
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:37.