非JSF组件的条件渲染(普通的vanilla HTML和模板文本)

前端之家收集整理的这篇文章主要介绍了非JSF组件的条件渲染(普通的vanilla HTML和模板文本)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图有条件地渲染< tr>因此我无法使用< h:panelGroup>因为它将呈现为< span>或< div>

我目前(工作)的方法如下:

<h:outputFormat rendered="#{negotiator.maySend}">
    <tr> my tr stuff </tr>
</h:outputFormat>

这是有效的,但我不知道是否滥用< h:outputFormat> – 之前我使用了< h:outputLabel>但是这被呈现为< label>在IE中.

我也读过这个问题的答案,但如上所述,由于< tr>:How to not render whole block in JSF?,他们不会为我工作

解决方法

I cannot use <h:panelGroup> as it will render to <span> or <div>

显然你没有仔细测试.如果您没有指定最终在客户端的属性(如layout,id,styleClass等),则<h:panelGroup>将不会呈现任何内容.

因此,这在技术上应该是完美的.

<h:panelGroup rendered="#{negotiator.maySend}">
    <tr> my tr stuff </tr>
</h:panelGroup>

但是,更好的主要目的是使用<ui:fragment>.

<ui:fragment rendered="#{negotiator.maySend}">
    <tr> my tr stuff </tr>
</ui:fragment>

这也是可能的<f:verbatim>,但是自从JSF 2.0被专门用于JSP设计以来,这是不推荐的.

也可以看看:

> Alternative to ui:fragment in JSF
> Conditionally displaying JSF components
> How to find out client ID of component for ajax update/render? Cannot find component with expression “foo” referenced from “bar”
> Ajax update/render does not work on a component which has rendered attribute

原文链接:https://www.f2er.com/html/224066.html

猜你在找的HTML相关文章