Visualización personalizada de columnas y campos
Da formato a columnas de la cuadrícula y campos del formulario sin tocar los datos subyacentes - patrones, truncado, tooltips, resaltado y ventanas emergentes de solo lectura.
Componer un patrón de visualización
->column_pattern($field, $pattern) reemplaza el valor mostrado de una columna por una plantilla que puede incorporar OTRAS columnas de la misma fila mediante {placeholder}. Solo afecta a la visualización - editar el campo (en línea o en el formulario) sigue mostrando/guardando su propio valor real.
$xcrud->column_pattern('customerNumber', 'Customer #{customerNumber} - {city}');
| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
$field | string | - | Columna cuyo valor mostrado se reemplaza |
$pattern | string | - | Texto de plantilla; {placeholder} hace referencia a cualquier columna en lista blanca de la fila |
Truncar texto largo
->column_cut($field, $length) trunca el texto mostrado de una columna a $length caracteres, añadiendo puntos suspensivos cuando se corta. El valor completo sigue disponible como tooltip al pasar el cursor, y la edición en línea siempre muestra el valor sin truncar.
$xcrud->column_cut('description', 60);
| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
$field | string | - | Columna a truncar |
$length | int | - | Máximo de caracteres mostrados antes de los puntos suspensivos |
Estilos y sugerencias
->column_class($field, $class) añade una clase CSS adicional al encabezado de una columna y a cada una de sus celdas (por ejemplo, alinear a la derecha una columna numérica). ->column_tooltip($field, $text) añade un icono de sugerencia al pasar el cursor junto al encabezado de columna. ->column_width($field, $width) establece un ancho de columna fijo (por ejemplo, '200px' o '20%').
$xcrud->column_class('creditLimit', 'text-right');
$xcrud->column_tooltip('creditLimit', 'Maximum outstanding balance allowed.');
$xcrud->column_width('creditLimit', '140px');
| Método | Parámetros | Descripción |
|---|---|---|
column_class | $field, $class | Clase CSS adicional en el encabezado y celdas de la columna |
column_tooltip | $field, $text | Sugerencia al pasar el cursor sobre el encabezado de columna |
column_width | $field, $width | Ancho de columna fijo |
->field_tooltip($field, $text) es el equivalente del lado del formulario - una sugerencia al pasar el cursor junto a la etiqueta de un campo del formulario en lugar de un encabezado de la cuadrícula.
$xcrud->field_tooltip('creditLimit', 'Maximum outstanding balance allowed.');
Resaltado condicional
->highlight($field, $operator, $value, $class) colorea el fondo de una única celda cuando su valor coincide con una comparación. ->highlight_row($field, $operator, $value, $class) hace lo mismo para la fila completa. $operator acepta símbolos (=, !=, >, >=, <, <=) o códigos (eq, neq, gt, gte, lt, lte, contains, starts, ends).
$xcrud->highlight('creditLimit', 'gt', '100000', 'xcrud-hl-warn');
$xcrud->highlight_row('status', 'eq', 'overdue', 'xcrud-hl-danger');
| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
$field | string | - | Columna que lee la comparación |
$operator | string | - | Operador de comparación (símbolo o código) |
$value | string | - | Valor contra el que comparar |
$class | string | - | Clase CSS aplicada cuando la comparación coincide |
Varias reglas pueden coincidir en la misma celda/fila - las clases se acumulan en lugar de reemplazarse entre sí. Consulta Renderizado personalizado de celdas: insignias y avatares para combinar el resaltado con marcado de insignias/avatares.
Ventana emergente de solo lectura para valores largos
->modal($field) hace que la celda de una columna no editable abra su valor completo en una ventana emergente de solo lectura al hacer clic, en lugar de no hacer nada o activar la edición en línea.
$xcrud->modal('description');