我在JSF 2.0页面中有一个使用基本HTML的列表,如下所示:
<ul>
<li><h:outputText value="Item1" /></li>
<li><h:outputText value="Item2" /></li>
<li><h:outputText value="Item3" /></li>
<li><h:outputText value="Item4" /></li>
</ul>
但我不想在某些条件下显示某些项目,所以我可以使用:
<ul>
<li><h:outputText value="Item1" rendered="true"/></li>
<li><h:outputText value="Item2" rendered="true"/></li>
<li><h:outputText value="Item3" rendered="false"/></li>
<li><h:outputText value="Item4" rendered="false"/></li>
</ul>
但是,列表项仍在呈现并且正在破坏我的页面,所以我正在寻找替换普通<li>
项的东西,所以我可以使用rendered
选项,或者可能是一些另一个想法。
谢谢!
答案 0 :(得分:13)
您还需要有条件地呈现<li>
。在<h:panelGroup>
或<ui:fragment>
中包装每一个。
<ul>
<ui:fragment rendered="true"><li>Item1</li></ui:fragment>
<ui:fragment rendered="true"><li>Item2</li></ui:fragment>
<ui:fragment rendered="false"><li>Item3</li></ui:fragment>
<ui:fragment rendered="false"><li>Item4</li></ui:fragment>
</ul>