Ich möchte eine kleine HTML-Seite erstellen, in der Sie die Operatoren auswählen können, die Sie in Ihrer Berechnung verwenden möchten, und unter dem Kontrollkästchen gibt es eine Dropdown-Liste mit den oben ausgewählten Operatoren Inhalt. Jedes Mal, wenn Sie eine Operation aktivieren/deaktivieren, sollten sich die auswählbaren Inhalte der Dropdown-Liste ändern. Ich möchte dies mit einem ValueChangeListener machen, aber ich habe keine Ahnung, wie man einen Wertänderungshörer in dieser Übung implementiert.JSF SelectManyCheckbox/SelectOneMenu Beispiel
Hier ist meine index.html
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:f="http://xmlns.jcp.org/jsf/core">
<h:head>
<title>Facelet Title</title>
</h:head>
<h:body>
<h:form>
<h:selectManyCheckbox onchange = "submit()">
<f:selectItems value = "#{selectManyCheckboxBean.list}" valueChangeListener = ""/>
</h:selectManyCheckbox>
<h:outputText id = "outputText" value = ""/>
<h:selectOneMenu value = "">
<f:selectItems value = ""/>
</h:selectOneMenu>
</h:form>
</h:body>
Und hier ist mein SelectManyCheckboxBean.java
@ManagedBean
@SessionScoped
public class SelectManyCheckboxBean {
private List<SelectItem> list;
public SelectManyCheckboxBean() {
list = new ArrayList<>();
list.add(new SelectItem('+'));
list.add(new SelectItem('-'));
list.add(new SelectItem('*'));
list.add(new SelectItem('/'));
}
public List<SelectItem> getList() {
return list;
}
public void operatorValueChange (ValueChangeEvent event) {
}
}
Könnte mir jemand eine Lösung geben, oder zumindest ein Code-Snippet für den Wert Hörer wechseln? Mein Hauptproblem besteht darin, dass ich nicht weiß, wie ich dem Wertänderungs-Listener mitteilen kann, dass er die ausgewählten Operatoren zu einer Liste hinzufügen soll, wenn sie in den obigen Kontrollkästchen aktiviert wurden.
Vielen Dank, aber ich möchte dies mit einem Wert ändern Listener machen. –
'f: selectItems' hat nicht' valueChangeListener', 'h: selectManyCheckbox' tut ... Fügen Sie einfach' # {selectManyCheckboxBean.operatorValueChange} 'value zu' valueChangeListener' hinzu. – peterremec