JSF h: dataTable erstellt eine einzelne leere Zelle, wenn keine Datensätze vorhanden sind

8

Gibt es eine Möglichkeit zu verhindern, dass eine h: datatable eine leere Zeile erstellt, wenn der Hintergrundwert leer ist? Genauer: Ich habe eine Sammlung von Daten in 3 Spalten in einer h: dataTable mit Spaltenüberschriften angezeigt werden. Thead muss immer angezeigt werden, unabhängig davon, ob Elemente in der Liste vorhanden sind. Dies funktioniert gut, aber wenn keine Elemente in der Liste sind, wird eine einzelne, leere Zeile / Zelle im tBody erstellt. Gibt es einen Weg dies zu verhindern?

Danke!

Beispielmethode von Backing Bean. Zum Testen habe ich versucht, sowohl null als auch eine leere Liste zurückzugeben. Das gleiche Ergebnis für beide.

%Vor%

JSF-Fragment:

%Vor%

Resultierendes HTML (Das " <tr><td></td></tr> " im tbody ist das Problem):

%Vor%     
GoProtege 04.12.2012, 22:40
quelle

3 Antworten

5

Geben Sie einen separaten Stil für eine leere Tabelle an. ZB

%Vor%

Und fügen Sie es bedingt hinzu.

%Vor%     
BalusC 05.12.2012, 17:54
quelle
0

Sie können möglicherweise verhindern, dass die Spaltenüberschrift verschwindet, wenn Sie die Methode stattdessen in ein outputText-Tag

umbrechen

Beispiel:

%Vor%

Auf diese Weise hängt die Spalte selbst nicht von den Werten

ab     
TaylorSmolik 05.12.2012 01:00
quelle
0

Danke für BalusCs Vorschlag, aber ich habe es versucht, es hat nicht funktioniert. Es kann andere Gründe geben. Ich habe den Code von BalusC ein wenig korrigiert, es funktioniert jetzt:

%Vor%     
licaomeng 15.11.2015 17:55
quelle

Tags und Links