# Frage zu Checkbox bei JSF



## JanHH (19. Okt 2009)

Hallo,

in meiner Applikation gibt es eine Liste mit Checkboxes, die bestimmte Dinge zur Auswahl anbieten, sowie darunter eine Checkbox, die alle anderen ausschliesst (nach dem Motto: Keins von den oben aufgezählten Dingen). Wenn man diese anklickt, sollen alle anderen per javascript deaktiviert werden (so dass man sie nicht mehr anklicken kann, sondern sie nur noch blass und inaktiv dargestellt werden). Ebenso soll bei einem Klick auf die anderen Checkboxes die Ausschliesslich-Checkbox deaktiviert werden. Und auch umgekehert, d.h. wenn man das Häkchen bei der Ausschluss-Box wegnimmt, sollen die anderen alle wieder aktiviert werden, usw usf.

Problem ist nur, die Liste der Dinge, die da zur Auswahl angezeigt werden, ist nicht statisch, sondern wird dynamisch aus einer Datenbank generiert und kann höchst unterschiedlich sein.

Es handelt sich dabei um ein JSF-Projekt. Gibt es irgendeine Möglichkeit, sowas halbwegs automatisiert erzeugen zu lassen, oder muss dazu ganz viel Javascript-Code per hand geschrieben werden?

Gruß+Danke
Jan


----------



## mmeyer1987 (20. Okt 2009)

Moin,

Deinen oberen dynamischen Checkboxen allen ein Präfix verpassen. Wenn du unten klickst, ein JS laufen lassen, welches alle Komponenten durchläuft, auf Präfix prüft und Styles verändert. Serverseitig musst du natürlich noch mal gegenprüfen, falls jemand JS ausschaltet oder sich in den Request hängt.

Grüße!


----------



## JanHH (21. Okt 2009)

Die Variante klingt zumindest so, als würde man nur einmal ein JS programmiere müssen, welches dann universell für alle Formulare, wo sowas vorkommt, einsetzbar ist. Aber was genau meinst Du mit "präfix"? Serverseitig überprüfen ob JS aktiviert ist, ist wohl auch nicht so einfach, aber in dem Fall auch nicht so wichtig.


----------



## mmeyer1987 (21. Okt 2009)

Guten Morgen,



JanHH hat gesagt.:


> Aber was genau meinst Du mit "präfix"?


 Du gibst allen Checkboxes meinetwegen die Namen "chb_Box1", "chb_Box2",... wie auch immer, aber so, das du mit dem JS die ersten Zeichen abgreifen kannst, und das ist überall "chb_".





JanHH hat gesagt.:


> Serverseitig überprüfen ob JS aktiviert ist, ist wohl auch nicht so einfach, aber in dem Fall auch nicht so wichtig.



Brauchst du auch nicht. Du musst halt serverseitig nur zusehen, das die Logik stimmt, Nicht dass du Die Werte der oberen Checkboxes verarbeitest, wenn unten etwas ausgewählt ist. Allein JS an der Oberfläche zu haben gibt einem ja keine Sicherheit.

Gruß


----------

