我有一个带选择项的selectOneMenu。 如果我使用
<f:selectItem itemValue="3" itemLabel="#{hrBundle['phoneType3']}"/>
效果很好,显示本地化标签。我在List中有更多选项,当我使用f:selectItems时,它会停止工作。 这段代码:
<f:selectItems value="#{values}" var="item" itemLabel="#{hrBundle[item.label]}" itemValue="item.value"/>
将键('phoneType3')显示为标签,甚至
<f:selectItems value="#{values}" var="item" itemLabel="#{hrBundle['phoneType3']}" itemValue="item.value"/>
('hardcoded'作为上面的单个f:selectItem)显示键('phoneType3')而不是本地化标签。
知道我做错了什么吗?
答案 0 :(得分:4)
这取决于捆绑文件中的密钥是什么。如果您的捆绑中的密钥是item.value
的内容,请执行以下操作:
<f:selectItems value="#{myBean.values}"
var="item"
itemLabel="#{hrBundle[item.value]}"
itemValue="#{item.value}"/>
我不知道,如果这是你的原始代码。如果是,请注意以下事项:
value
属性中(如图所示)
上面:用您的{替换myBean
豆名。)。itemValue
属性需要一个
el表达式:itemValue=
"#{item.value}"