Jsf 将SelectOne菜单中的selectedValue添加到列表中
那么,交易如下: 我的视图中有一个SelectOne菜单:Jsf 将SelectOne菜单中的selectedValue添加到列表中,jsf,primefaces,arraylist,managed-bean,selectonemenu,Jsf,Primefaces,Arraylist,Managed Bean,Selectonemenu,那么,交易如下: 我的视图中有一个SelectOne菜单: <p:selectOneMenu value="#{personBean.person.personStates.state}" id="estadoRg" converter="entityConverter"> <f:selectItems value="#{stateBean.states}" var="state" itemLabel=#{state.name}" itemVa
<p:selectOneMenu value="#{personBean.person.personStates.state}" id="estadoRg"
converter="entityConverter">
<f:selectItems value="#{stateBean.states}" var="state"
itemLabel=#{state.name}" itemValue="#{state}">
</f:selectItems>
</p:selectOneMenu>
您应该通过selectedState
值来处理它,然后您可以为特定的人绑定它:
<p:selectOneMenu value="#{stateBean.selectedState}" id="estadoRg"
converter="entityConverter">
<f:selectItems value="#{stateBean.states}" var="state"
itemLabel=#{state.name}" itemValue="#{state}">
</f:selectItems>
</p:selectOneMenu>
和支持bean方法:
public void matchStates {
FacesContext facesContext = FacesContext.getCurrentInstance();
ElContext elContext = facesContext.getELContext();
Object stateBean = elContext.getELResolver().getValue(elContext, null, "stateBean").
State selectedState = stateBean.getSelectedState();
personList.get(index).setState = selectedState;
}
好啊这让我头脑清醒。。。我唯一要改变的是,该方法将由ajax处理。。。。非常感谢
public void matchStates {
FacesContext facesContext = FacesContext.getCurrentInstance();
ElContext elContext = facesContext.getELContext();
Object stateBean = elContext.getELResolver().getValue(elContext, null, "stateBean").
State selectedState = stateBean.getSelectedState();
personList.get(index).setState = selectedState;
}