当我想隐藏JSF中的某些内容时,为此目的制作了什么标记?有几个标签可以完成这项工作:
<f:subview rendered="#{...condition...}" />
和
<c:when test="#{...conditon...}" />
哪个是正确的?
答案 0 :(得分:2)
rendered
是最好的方法。
根本不建议使用像<c:when>
这样的JSTL标签,甚至打破像ViewScope注释这样的JSF的一些功能。始终尝试使用JSF标记(例如ui:repeat
而不是c:forEach
)
答案 1 :(得分:0)
<ui:remove>
请看这里:http://www.jsftoolbox.com/documentation/facelets/10-TagReference/facelets-ui-remove.html
更新
如果您想有条件地隐藏某些内容,可以使用
<h:panelGroup rendered="#{...condition...}">
呈现为<span>
,您还可以添加属性layout="block"
<h:panelGroup rendered="#{...condition...}" layout="block">
将其呈现为<div>
。