How to dynamically create a <f:selectItem> list?
Is there a way to dynamically create a selectItem list? I dont really want to have to create lots of bean code to make my lists return List<SelectItem>
.
I tried this:
<ice:selectManyCheckbox>
<ui:repeat var="product" value="#{productLi开发者_运维知识库stingService.list}">
<f:selectItem itemLabel="#{product.description}" value="#{product.id}"/>
</ui:repeat>
</ice:selectManyCheckbox>
but it doesnt work.
Any ideas?
Use <f:selectItems>
instead. It accepts next to List<SelectItem>
and SelectItem[]
also a Map<String, Object>
as value where the map key is the item label and map value is the item value. Or if you're already on JSF 2.0, then you can use a List<SomeBean>
instead where the current item can be referenced by the var
attribute.
<f:selectItems value="#{productListingService.list}" var="product"
itemLabel="#{product.description}" itemValue="#{product.id}" />
See also:
- Our
<h:selectOneMenu>
wiki page
精彩评论