gpt4 book ai didi

jsf - 将 selectonemenu 中的 selectedValue 添加到列表

转载 作者:行者123 更新时间:2023-12-04 21:03:07 25 4
gpt4 key购买 nike

所以,这是交易:我的 View 中有一个 selectOneMenu:

<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>

其中 personStates 是一个包含人员、状态 n 日期的列表。是否可以将 itemValue 中的值直接添加到 personStates 列表中? (我的 PersonModel 中有一个自动构建的 addPersonState 方法)

如果没有,我应该怎么做?我不想为我的 personBean 中的每个 selectOneMenu(将为 5)添加一个状态实例...清楚了吗?

最佳答案

你应该通过selectedState值来处理它,然后你可以为特定的人绑定(bind)它:

<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>

这是 p:selectOneMenu 的使用方式,能够绑定(bind)选定状态和调用方法的人:

<p:commandButton actionListener="#{personBean.matchStates}" />

和支持 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;
}

关于jsf - 将 selectonemenu 中的 selectedValue 添加到列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16167419/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com