我想向用户显示一些数据
可以根据配置
通过不同的JSF标签向用户表示数据例如,有时它可能由文本
表示有时它可能由图形符号或偶数图表
表示我也希望这种表示可以自定义。
我怎么能这样做?
答案 0 :(得分:0)
使用rendered
属性。
<h:outputText value="#{bean.value}" rendered="#{bean.datatype == 'text'}" />
<h:graphicImage value="#{bean.value}" rendered="#{bean.datatype == 'image'}" />
<x:someChart value="#{bean.value}" rendered="#{bean.datatype == 'chart'}" />
每当rendered
属性中的布尔表达式求值为true
时,组件将被渲染(显示),否则不会(隐藏)。在上面的示例中,Bean#getDataType()
应该返回String
或Enum
。
以下是如何在EL中使用布尔表达式的另一个示例:
<h:someComponent rendered="#{bean.booleanValue}" />
<h:someComponent rendered="#{bean.intValue > 10}" />
<h:someComponent rendered="#{bean.objectValue == null}" />
<h:someComponent rendered="#{bean.stringValue != 'someValue'}" />
<h:someComponent rendered="#{!empty bean.collectionValue}" />
<h:someComponent rendered="#{!bean.booleanValue && bean.intValue != 0}" />
<h:someComponent rendered="#{bean.enumValue == 'FOO' || bean.enumValue == 'BAR'}" />