【发布时间】:2011-07-11 12:50:06
【问题描述】:
如何预选h:selectManyCheckbox 组件中的元素?我已经搜索了f:selectItem 标签的属性,但还没有找到如何预先选择这个项目(即在调用站点时它已经被勾选了)。
【问题讨论】:
如何预选h:selectManyCheckbox 组件中的元素?我已经搜索了f:selectItem 标签的属性,但还没有找到如何预先选择这个项目(即在调用站点时它已经被勾选了)。
【问题讨论】:
h:selectManyCheckbox 的 value 属性可以接受来自托管 bean 的字符串数组。你可以在托管bean初始化的时候直接给这个数组设置默认值。
例如,在视图中:
<h:selectManyCheckbox value="#{MBean.choice}">
<f:selectItem itemValue="A" itemLabel="Choice A" />
<f:selectItem itemValue="B" itemLabel="Choice B" />
<f:selectItem itemValue="C" itemLabel="Choice C"/>
<f:selectItem itemValue="D" itemLabel="Choice D" />
</h:selectManyCheckbox>
然后在 MBean 中:
public class MBean{
//Preselect the "Choice A" and "Choice C"
private String[] choice= {"A","C"};
//Getter and setter of choice
}
【讨论】:
List<T> 顺便也支持一下。
SELECTED 属性的东西,但果然,这是实现这一目标的方法。我没有看到森林,被所有的树木蒙蔽了双眼。
添加到您的后备列表或数组对象,当比较等于您要预选的 SelectItems 的值时返回 true。
【讨论】: