jsf中的selectitem和selectitems标签有什么区别?
答案 0 :(得分:11)
差异正是您所期望的。 selectitem
标记会在HTML列表中添加单个项目,selectitems
会添加多个项目。
SelectItem
标记将子UISelectItem
组件添加到与封闭标记关联的组件中。在HTML renderkit中,这会创建一个元素。它可以与JSF HTML标记库中的任何select标记一起使用。此标记的正文内容必须为空。
示例:的
<h:selectOneMenu id="list1">
<f:selectItem itemLabel="Option 1" itemValue="1"></f:selectItem>
</h:selectOneMenu>
HTML输出:
<select id="list1" name="list1" size="1">
<option value="1">Option 1</option>
</select>
SelectItems
标记将子UISelectItems
组件添加到与封闭标记相关联的组件中。您可以使用此标记将域模型中的对象列表设置为选择组件的选项。此标记的正文内容必须为空。
示例:的
<h:selectManyListbox id="list">
<f:selectItems value="#{optionBean.optionList}"></f:selectItem>
</h:selectManyListbox>
HTML输出:
<select id="list" name="list" multiple="true" size="-2147483648">
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
</select>
答案 1 :(得分:1)
还要记住,f:selectItems可以指向SelectItem,SelectItem对象的数组或集合,或者将标签映射到值。