我使用的是Primefaces 6.0,我的问题如下: 首先,这是Code Snippet
.xhtml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:p="http://primefaces.org/ui"
xmlns:f="http://java.sun.com/jsf/core"
>
<h:head><title>HelpMeStackoverflow</title></h:head>
<h:body>
<h:form id="form">
...
<p:outputLabel for="vorname1" value="Vorname 1"/>
<p:inputText id="vorname1" value="#{bean.p1vorname}"/>
<p:message for="vorname1"/>
<p:outputLabel for="zuname1" value="Zuname 1"/>
<p:inputText id="zuname1" value="#{bean.p1zuname}"/>
<p:message for="zuname1"/>
<p:outputLabel for="vorname2" value="Vorname 2"/>
<p:inputText id="vorname2" value="#{bean.p2vorname}"/>
<p:message for="vorname2"/>
<p:outputLabel for="zuname2" value="Zuname 2"/>
<p:inputText id="zuname2" value="#{bean.p2zuname}"/>
<p:message for="zuname2"/>
<p:selectOneMenu id="dropdownvalue"
value="#{bean.dropdownvalue}"
required="true"
requiredMessage="Bitte auswählen!">
<f:selectItem itemLabel="Bitte auswählen" noSelectionOption="true"/>
<f:selectItem
itemLabel="#{bean.p1vorname} #{bean.p1zuname}"
itemValue="1"
itemDisabled="#{bean.p1zuname.isEmpty()}"/>
<f:selectItem
itemLabel="#{bean.p2vorname} #{bean.p2zuname}"
itemValue="2"
itemDisabled="#{bean.p2zuname.isEmpty()}"/>
</p:selectOneMenu>
<p:message for="dropdownvalue"/>
...
</h:body>
</html>
豆
@ManagedBean(name = "bean")
@RequestScoped
public class MyController implements Serializable {
...
private String p1zuname;
private String p1vorname;
private String p2zuname;
private String p2vorname;
...
// autogenerated getters/setters
}
Dropdown只包含空字符串。我调试了属性的集合* -Methods并且值在。这里的问题似乎是p:selectOneMenu或f:selectItem。
用于:
答案 0 :(得分:0)
我在所有的p:inputTexts
中添加了一些ajax<p:ajax event="blur" process="vorname1 zuname1 vorname2 zuname2"
update="dropdownvalue"/>
现在它可以正常工作。