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

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

概述我试图有条件地渲染< tr>因此我无法使用< h:panelGroup>因为它将呈现为< span>或< div> 我目前(工作)的方法如下: <h:outputFormat rendered="#{negotiator.maySend}"> <tr> my tr stuff </tr></h:outputFormat> 这是有效的,但我不知道是否滥用< h:outputFormat> 我试图有条件地渲染< 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

总结

以上是内存溢出为你收集整理的非JSF组件的条件渲染(普通的vanilla HTML和模板文本)全部内容,希望文章能够帮你解决非JSF组件的条件渲染(普通的vanilla HTML和模板文本)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1144366.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存