Mehrere Styleklassen für Tabellenreihen

Status
Nicht offen für weitere Antworten.

swatermeyer

Mitglied
Hallo zusammen,
ich habe ein HtmlPanelGrid bei dem ich den ersten drei Zeilen die StyleKlasse "konstante" und den darauffolgenden die Klasse "variabel" geben möchte. Da die Tabelle dynamisch generiert wird, weiß ich nicht wieviele Zeilen die Tabelle hat, mindestens jedoch drei.

Mein Ansatz war jetzt dem PanelGrid über setRowClasses("constant, constant, constant, variabel") die Klassenzuzuweisen, allerdings fängt JSF dann ab der fünften Zeile wieder von vorne mit "constant" an. Wie bringe ich JSF bei, dass er für alle folgenden Zeilen die CSS-Klasse "variabel" verwenden soll?

VG Stephan
 
Einfach oft genug variabel eingeben 😉

Hab selbst noch keine bessere Lösung für dieses Problem, vielleciht hilft ja ein EL Ausdruck 😉
 
ich habe es noch nicht ausprobiert und es wäre natürlich keine schöne Lösung, aber kannst du den Header deiner Tabelle nicht dafür missbrauchen? wenn du da evtl. eine weiter Tabelle oder divs einfügst, kannst du damit deine Spaltenüberschriften und die ersten 3 Zeilen unterbringen und für diese 3 Zeilen deine Klasse konstante verwenden.

Keine Gewähr das es funktioniert.
 
Ich habe schon einmal den Namen der styleclass in der Bean in jedem Datensatz hinterlegt. und mit jeder Zeile, je nachdem was ich für Daten hatte, war die Formatierung der Zeile anders. allerdings musst du innerhalb deines column tags zusätzlich die Daten mit divs oder panelgrids kapseln und diese dann mit deinen styleclasses formatieren.


Das könnte dann so aussehen:
Code:
<t:dataTable var="data" value="#{datalist.List}">
        <t:column>
	    <f:facet name="header">
                  <h:outputText value="Spaltenüberschrift"/>
            </f:facet>
            <h:panelGrid styleclass"#{data.style}"
		<h:outputText value="#{data.name}" />
            </h:panelGrid>
	</t:column>
...
 
Mh okay, danke für den Ansatz.

Leider hat sich das Problem noch ein wenig ausgeweitet. Nun ist es nicht mehr so, dass die ersten 3 Zeilen konstant sind, sondern auch zwischendrin mal wieder eine Zeile. Da der Aufbau aus ner Datenbank gelesen wird, muss ich nun erstmal schauen, ob und in wie fern da Daten über die Zeilen mitgeliefert werden... hoffentlich werden sie überhaupt mitgeliefert :|
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben