我是JDeveloper和ADF的新手,从selectOneChoice组件获取所选值时遇到了一个问题。这是valuChangeListener:
public void versionValueChangeListener(ValueChangeEvent valueChangeEvent) {
System.out.println(valueChangeEvent.getOldValue().toString());
System.out.println(valueChangeEvent.getNewValue().toString());
}
这给出的是所选选项的索引,而不是文本本身。如何获取文本而不是索引?
这是selectOneChoice的代码:
<af:selectOneChoice value="#{bindings.Version.inputValue}"
label="#{bindings.Version.label}"
required="#{bindings.Version.hints.mandatory}"
shortDesc="#{bindings.Version.hints.tooltip}"
id="soc3" autoSubmit="true"
valueChangeListener="#{savesBean.versionValueChangeListener}">
<f:selectItems value="#{bindings.Version.items}" id="si3"/>
</af:selectOneChoice>
谢谢:)
最佳答案
这是Orcle的家伙这样做的方式
How-to get the selected af:selectOneChoice Label 尽管我认为可以用其他方式完成...
我认为您最好构建一个map
,其中索引将是键,值是标签
比在versionValueChangeListener中,您将访问以下地图:myMap.get(valueChangeEvent.getNewValue().toString());