Individuelle Spalten- & Feldanzeige
Grid-Spalten und Formularfelder formatieren, ohne die zugrunde liegenden Daten zu berühren - Muster, Kürzung, Tooltips, Hervorhebung und schreibgeschützte Popups.
Ein Anzeigemuster zusammenstellen
->column_pattern($field, $pattern) ersetzt den angezeigten Wert einer Spalte durch eine Vorlage, die über {platzhalter} ANDERE Spalten derselben Zeile einbeziehen kann. Nur für die Anzeige - das Bearbeiten des Feldes (inline oder im Formular) zeigt und speichert weiterhin seinen echten Wert.
$xcrud->column_pattern('customerNumber', 'Customer #{customerNumber} - {city}');
| Parameter | Typ | Standard | Beschreibung |
|---|---|---|---|
$field | string | - | Spalte, deren angezeigter Wert ersetzt wird |
$pattern | string | - | Vorlagentext; {platzhalter} verweist auf jede whitelisted Spalte der Zeile |
Langen Text kürzen
->column_cut($field, $length) kürzt den angezeigten Text einer Spalte auf $length Zeichen und fügt bei Kürzung Auslassungspunkte hinzu. Der vollständige Wert bleibt weiterhin als Hover-Tooltip verfügbar, und die Inline-Bearbeitung zeigt immer den ungekürzten Wert.
$xcrud->column_cut('description', 60);
| Parameter | Typ | Standard | Beschreibung |
|---|---|---|---|
$field | string | - | Zu kürzende Spalte |
$length | int | - | Maximale Zeichenanzahl vor den Auslassungspunkten |
Styling und Hinweise
->column_class($field, $class) fügt dem Spaltenkopf und jeder Zelle darin eine zusätzliche CSS-Klasse hinzu (z. B. um eine numerische Spalte rechtsbündig auszurichten). ->column_tooltip($field, $text) fügt einem Spaltenkopf ein Hover-Hinweissymbol hinzu. ->column_width($field, $width) legt eine feste Spaltenbreite fest (z. B. '200px' oder '20%').
$xcrud->column_class('creditLimit', 'text-right');
$xcrud->column_tooltip('creditLimit', 'Maximum outstanding balance allowed.');
$xcrud->column_width('creditLimit', '140px');
| Methode | Parameter | Beschreibung |
|---|---|---|
column_class | $field, $class | Zusätzliche CSS-Klasse am Spaltenkopf und den Zellen |
column_tooltip | $field, $text | Hover-Hinweis am Spaltenkopf |
column_width | $field, $width | Feste Spaltenbreite |
->field_tooltip($field, $text) ist das formularseitige Gegenstück - ein Hover-Hinweis neben dem eigenen Label eines Formularfeldes statt an einem Grid-Kopf.
$xcrud->field_tooltip('creditLimit', 'Maximum outstanding balance allowed.');
Bedingte Hervorhebung
->highlight($field, $operator, $value, $class) färbt den Hintergrund einer einzelnen Zelle, wenn ihr Wert einem Vergleich entspricht. ->highlight_row($field, $operator, $value, $class) macht dasselbe für die gesamte Zeile. $operator akzeptiert Symbole (=, !=, >, >=, <, <=) oder Codes (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');
| Parameter | Typ | Standard | Beschreibung |
|---|---|---|---|
$field | string | - | Spalte, die der Vergleich liest |
$operator | string | - | Vergleichsoperator (Symbol oder Code) |
$value | string | - | Wert, mit dem verglichen wird |
$class | string | - | CSS-Klasse, die bei zutreffendem Vergleich angewendet wird |
Mehrere Regeln können auf dieselbe Zelle/Zeile zutreffen - ihre Klassen stapeln sich, statt sich gegenseitig zu ersetzen. Wie man Hervorhebung mit Badge-/Avatar-Markup kombiniert, finden Sie unter Individuelles Zellen-Rendering: Badges & Avatare.
Schreibgeschütztes Popup für lange Werte
->modal($field) sorgt dafür, dass die Zelle einer nicht bearbeitbaren Spalte bei einem Klick ihren vollständigen Wert in einem schreibgeschützten Popup öffnet, statt nichts zu tun oder die Inline-Bearbeitung auszulösen.
$xcrud->modal('description');