jsf – 如何有条件地呈现?

栏目: Java · 发布时间: 7年前

内容简介:http://stackoverflow.com/questions/4369114/how-do-i-conditionally-render-an-ffacet

我希望能够从PrimeFaces面板元素有条件地省略页脚:

<p:panel header="some text">
    <f:facet name="footer">
        #{message}
    </f:facet>
    <!-- ... -->
</p:panel>

我希望渲染的属性可以工作:

<p:panel header="some text">
    <f:facet name="footer" rendered="#{!empty message}">
        #{message}
    </f:facet>
    <!-- ... -->
</p:panel>

但页脚仍然呈现,内容空白.看来facet没有渲染属性: http://www.jsftoolbox.com/documentation/help/12-TagReference/core/f_facet.html .

这样做的正确方法是什么?

我能够通过交换一个属性来解决这个问题.总结:

这个工作

<p:panel ...>
    <f:attribute name="footer" value="#{message}"/>
    <!-- ... -->
</p:panel>

但这不行

<p:panel footer="#{message}">
    <!-- ... -->
</p:panel>

这也没有

<p:panel ...>
    <f:facet name="footer">#{message}</f:facet>
    <!-- ... -->
</p:panel>

也不是这样

<p:panel ...>
    <f:facet name="footer">
        <h:outputText value="#{message}" rendered="#{!empty message}"/>
    </f:facet>
    <!-- ... -->
</p:panel>

“工作”我的意思是:

当#{message}为空或为null时,不会显示页脚 – 而不仅仅是一个空的页脚,否则,使用指定的文本正确地呈现页脚.

PrimeFaces forum thread on this issue

http://stackoverflow.com/questions/4369114/how-do-i-conditionally-render-an-ffacet


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

平台战略

平台战略

陈威如、余卓轩 / 中信出版社 / 2013-1 / 58.00元

《平台战略:正在席卷全球的商业模式革命》内容简介:平台商业模式的精髓,在于打造一个完善的、成长潜能强大的“生态圈”。它拥有独树一帜的精密规范和机制系统,能有效激励多方群体之间互动,达成平台企业的愿景。纵观全球许多重新定义产业架构的企业,我们往往就会发现它们成功的关键——建立起良好的“平台生态圈”,连接两个以上群体,弯曲、打碎了既有的产业链。 平台生态圈里的一方群体,一旦因为需求增加而壮大,另......一起来看看 《平台战略》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具