So wählen Sie mehrere Zeilen mit <h:dataTable - > mit <h:selectBooleanCheckbox>
Benutze ich <h:dataTable>
Liste von Daten aus der Datenbank. Wir haben viele Datensätze in Seite, heute würde ich gerne wählen Sie mehrere Datensätze mit einer checkbox in jeder Zeile. Wie kann ich das erreichen?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich nehme an, dass die Entität ist, die gut durchdacht ist, dass es verfügt über eine einzigartige technische Bezeichner, zum Beispiel die auto-Inkrement-Sequenz aus der DB.
Wenn nicht, müssen Sie es hinzufügen.
Dann fügen Sie ein
Map<Long, Boolean>
Eigenschaft der bean, die gebunden ist an die Tabelle.(preinitialization kann auch passieren, in der (post -) Konstruktor, treffen Sie Ihre Wahl, zumindest JSF wird es nicht tun für Sie; oh, gib es einen getter als auch einen setter ist nicht notwendig)
Fügen Sie dann eine Spalte mit einer checkbox, die Karten auf den booleschen Wert von entity-ID als Schlüssel.
Nun, in der action-Methode, die mit der Schaltfläche löschen können Sie sammeln und löschen die ausgewählten Elemente wie folgt vor:
if (checked.get(entity.getId())) {