2010-08-20 84 views
3

当我想隐藏JSF中的某些内容时,为此目的制作了什么标签?有几个标签,可以做的工作:使用什么标签来隐藏JSF中的内容

<f:subview rendered="#{...condition...}" /> 

<c:when test="#{...conditon...}" /> 

就是用正确的?

回答

0
<ui:remove> 

看吧:http://www.jsftoolbox.com/documentation/facelets/10-TagReference/facelets-ui-remove.html

UPDATE

如果要有条件地隐藏了一些内容,你可以使用

<h:panelGroup rendered="#{...condition...}"> 

它呈现为<span>,您还可以添加属性layout="block"

<h:panelGroup rendered="#{...condition...}" layout="block"> 

将其渲染为<div>

+0

他希望**有条件**隐藏内容。 – BalusC 2010-08-21 14:25:58

+0

是否有一个元素,不呈现任何HTML &&确实有其他元素的容器的语义? – coubeatczech 2010-08-23 23:28:47

+0

你可以试试''。它不支持“渲染”属性,但是......它的工作原理。 – amorfis 2010-08-23 23:54:39

2

在JSF中,使用rendered是最好的方法。

不推荐使用像<c:when>这样的JSTL标签,甚至打破JSF的一些功能,如ViewScope注释。始终尝试使用JSF标签(像ui:repeat代替c:forEach

+0

感谢您的回答,以及当我只是拥抱一些自然不具有渲染属性的html代码时应该使用什么标记? – coubeatczech 2010-08-20 17:54:26

+0

当然JSF之一:) – BalusC 2010-08-21 14:26:29