我正在使用 Icefaces 选择菜单从用户列表中选择用户
我想为每个用户重复 selectItem
这是我尝试过的:
<ice:selectOneMenu id="users">
<ui:repeat value="#{user.getUserList()}" var="user">
<f:selectItem itemLabel="#{user.name}" itemValue="#{user.id}"/>
</ui:repeat>
</ice:selectOneMenu>
用户Bean:
@Component("user")
@Scope("view")
Public class UserBean{
Public List<User> getUserList() throws Exception {
return userService.getAllUsers();
}
}
NOTE:UserBean 不包含属性 id,name,它们存在于 User 实体中。
请指教,谢谢。
The <ui:repeat>是一个 UI 组件<f:selectItem>是一个标记处理程序(如 JSTL)。标记处理程序在视图构建期间运行,然后 UI 组件在视图渲染期间运行。所以目前<ui:repeat>
运行,没有办法<f:selectItem>
.
A <c:forEach>
,它也是一个标签处理程序,可以工作,但更好的是使用<f:selectItems>反而。从 JSF 2.0 开始,它可以接受集合并支持var
还有属性:
<ice:selectOneMenu id="users">
<f:selectItems value="#{user.usersList}" var="userItem"
itemLabel="#{userItem.name}" itemValue="#{userItem.id}" />
</ice:selectOneMenu>
请注意,var
属性不应与范围内的现有 bean 冲突。
也可以看看:
- selectOneMenu维基页面
- JSF2 Facelets 中的 JSTL...有意义吗?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)