我希望获得h:selectManyListbox
所选项目的值和标签。
我有这个:
<h:selectManyListbox id="myList" size="10" value="#{search.selectedItems}">
<f:selectItems id="myListID" value="#{search.itemsList}">
</h:selectManyListbox>
问题在于,当我提交表单时,我只得到一个List<String>
值,我需要两个:选择值和标签。
我怎么能得到这个?
答案 0 :(得分:0)
你做不到。 HTML不会将选项标签发送到服务器端。此外,您通常已经知道与服务器端的值相关联的标签。只需要一些标签 - 值对的映射(例如Map<String, String>
),这样您就可以按所选值获取相关标签(更多,您可以在<f:selectItems>
中重复使用地图。)
也就是说,需要知道标签是一种设计气味。这个信息不应该首先出现在值中吗?