如何从支持 bean 添加到 BootsFaces b:selectOneMenu 组件中的不同值
How can I add to different values in BootsFaces b:selectOneMenu component from backing bean
你好,我有一个来自 JSF Bootsfaces 的组件 selectOneMenu,我想用支持 bean 的值填充它。
这是我试过但没有用的方法:
这是 xhtml:
<b:selectOneMenu ajax="true" process="@this" label="Selecteaza CNP sau CUI">
<f:selectItems value="#{cereri.cnpcui}" var="beer"
itemValue="1" itemLabel="#{cereri.cnpcui}" />
</b:selectOneMenu>
这是 java bean:
@ManagedBean(name = "cereri", eager = true)
@RequestScoped
public class Cereri {
private List<String> cnpcui;
public Cereri() {
cnpcui = new ArrayList<>();
cnpcui.add("CUI");
cnpcui.add("CNP");
}
public List<String> getCnpcui() {
return cnpcui;
}
public void setCnpcui(List<String> cnpcui) {
this.cnpcui = cnpcui;
}
下拉列表将每行的两个值显示为一个数组:[CNP,CUI] 两行。
我想要第一行的一个值和第二行的第二个值。
谢谢
您没有正确使用该组件。当您引用 itemLabel="#{cereri.cnpcui}"
时,您是在告诉组件输出整个数组。
要得到你想要的行为,你需要做这样的事情;
<b:selectOneMenu ajax="true" process="@this" label="Selecteaza CNP sau CUI">
<f:selectItems value="#{cereri.cnpcui}" var="beer"
itemValue="#{beer}" itemLabel="#{beer}" />
</b:selectOneMenu>
value
属性(在本例中为字符串)引用的列表中的每个项目都放置在局部范围变量 beer
中。因此,在表达式中引用 #{beer}
将指示组件输出实际的字符串。
你好,我有一个来自 JSF Bootsfaces 的组件 selectOneMenu,我想用支持 bean 的值填充它。
这是我试过但没有用的方法:
这是 xhtml:
<b:selectOneMenu ajax="true" process="@this" label="Selecteaza CNP sau CUI">
<f:selectItems value="#{cereri.cnpcui}" var="beer"
itemValue="1" itemLabel="#{cereri.cnpcui}" />
</b:selectOneMenu>
这是 java bean:
@ManagedBean(name = "cereri", eager = true)
@RequestScoped
public class Cereri {
private List<String> cnpcui;
public Cereri() {
cnpcui = new ArrayList<>();
cnpcui.add("CUI");
cnpcui.add("CNP");
}
public List<String> getCnpcui() {
return cnpcui;
}
public void setCnpcui(List<String> cnpcui) {
this.cnpcui = cnpcui;
}
下拉列表将每行的两个值显示为一个数组:[CNP,CUI] 两行。 我想要第一行的一个值和第二行的第二个值。
谢谢
您没有正确使用该组件。当您引用 itemLabel="#{cereri.cnpcui}"
时,您是在告诉组件输出整个数组。
要得到你想要的行为,你需要做这样的事情;
<b:selectOneMenu ajax="true" process="@this" label="Selecteaza CNP sau CUI">
<f:selectItems value="#{cereri.cnpcui}" var="beer"
itemValue="#{beer}" itemLabel="#{beer}" />
</b:selectOneMenu>
value
属性(在本例中为字符串)引用的列表中的每个项目都放置在局部范围变量 beer
中。因此,在表达式中引用 #{beer}
将指示组件输出实际的字符串。