本文概述
它是标准selectOneListbox组件的扩展版本。它用于从列表中选择一个值。 PrimeFaces提供了<p:selectOneListbox>组件来创建列表框。当我们希望从多个选项中获得用户的选择时, 这很有用。它具有下表列出的各种属性。
SelectOneListbox属性
Attribute | 默认值 | 返回类型 | Description |
---|---|---|---|
id | null | String | 它是组件的唯一标识符。 |
rendered | true | Boolean | 它用于渲染组件。它需要布尔值。 |
binding | null | object | 它用于设置一个表达式, 该表达式映射到支持bean中的服务器端UIComponent实例。 |
value | null | object | 用于参考列表设置组件的值。 |
converter | null | Converter/String | 它用于设置为组件定义转换器的文本。 |
required | false | Boolean | 用于根据需要制作组件 |
widgetVar | null | String | 它是客户端小部件的名称。 |
disabled | false | Boolean | 用于禁用组件。 |
label | null | String | 用于设置用户可显示名称。 |
var | null | String | 自定义内容显示中使用的迭代器名称。 |
filter | false | boolean | 显示列表的输入过滤器。 |
filterMatchMode | null | String | 用于过滤的匹配模式, 有效值为startsWith(默认值), contains, endsWith和custom。 |
filterFunction | null | String | 在自定义filterMatchMode中使用的客户端功能。 |
caseSensitive | false | Boolean | 定义过滤是否区分大小写。 |
scrollHeight | null | Integer | 定义可滚动区域的高度。 |
例子
在下面的示例中, 我们正在实现<p:selectOneListbox>组件。本示例包含以下文件。
JSF文件
// listbox.xhtml
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:p="http://primefaces.org/ui"
xmlns:f="http://xmlns.jcp.org/jsf/core">
<h:head>
<title>Listbox</title>
</h:head>
<h:body>
<h:form>
<h:panelGrid columns="2" style="margin-bottom:10px" cellpadding="5" columnClasses="label, value">
<p:outputLabel for="sports" value="Select a Sport:" />
<p:selectOneListbox id="sports" value="#{listBox.option}">
<f:selectItem itemLabel="Cricket" itemValue="Cricket" />
<f:selectItem itemLabel="Hocky" itemValue="Hocky" />
<f:selectItem itemLabel="Footbal" itemValue="Footbal" />
</p:selectOneListbox>
</h:panelGrid>
<p:commandButton value="Submit" update="display" oncomplete="PF('dlg').show()" icon="ui-icon-check" />
<p:dialog header="Selected Sport" modal="true" showEffect="fade" widgetVar="dlg" resizable="false">
<p:panelGrid columns="2" id="display" columnClasses="label, output">
<h:outputText value="#{listBox.option}" />
</p:panelGrid>
</p:dialog>
</h:form>
</h:body>
</html>
ManagedBean
// ListBox.java
package com.srcmini;
import javax.faces.bean.ManagedBean;
@ManagedBean
public class ListBox {
private String option;
public String getOption() {
return option;
}
public void setOption(String option) {
this.option = option;
}
}
输出
评论前必须登录!
注册