【问题标题】:How to put custom content like a linebreak inside p:column header如何将自定义内容(如换行符)放入 p:column 标题中
【发布时间】:2012-07-14 18:13:27
【问题描述】:

在我的应用程序中,我有以下<p:dataTable>

第二列的标题占用太多空间。因此,我想在Number ofSessions 之间放置一个换行符,并垂直对齐表格的标题。我试图减小列的宽度,但它并没有自动导致换行。

此外,由于标题名称是从l10n.properties 文件中检索的,我也尝试将其设置为Number of /n Sessions,但/n 被打印为普通字符串。

更新:我还尝试将属性设置为Number of <br/> Sessions。但是,在生成的 HTML 代码中,<br/> 消失了,表格看起来与上面完全相同。

如果您能给我一些建议,我将不胜感激。

最好的问候,

【问题讨论】:

    标签: css primefaces jsf-2 line-breaks


    【解决方案1】:

    如果是 CSS,您可以在“数量”之后添加 <br/> 标签。 我刚看到你编辑的帖子。

    您在 Firebug 中所做的实际上是“编辑文本” 但是,您需要做的是“右键单击”,然后“编辑 HTML”。这样,当您插入
    标签时,文本会中断并移到下一行。

    【讨论】:

    • :).. 但是,我怎样才能直接从 l10n.properties 文件中检索它?不知何故,<br/> 在整个视图打印出来之前就被删除了。
    【解决方案2】:

    试试这个

    <f:facet name="header">
        <h:outputLabel value="Number of&#10;Sessions" style="white-space:pre;"/>
    </f:facet>
    

    如果使用属性文件中的“会话数”,请在属性文件中尝试以下操作...

    myString = Number of \
               Sessions
    

    【讨论】:

    • 我刚刚尝试了您的解决方案。不是在Number ofSessions 之间放置换行符,而是在短语的开头创建换行符。结果,出现了一个空行,整个Number of Sessions 被移到了第二行。 :(
    • 您可以发布您尝试过的内容吗?因为,我在这里发布了对我来说工作正常的东西,当然我使用的是 IE。
    • 如果您从属性文件访问“会话数”,请尝试使用我更新的答案中提到的反斜杠
    【解决方案3】:

    首先,您需要从列中删除headerText 属性并在其中添加一个标题方面:

    /*  no_of_sessions = Number of &#10; Sessions  */
    <p:column ... >
        <f:facet name="header">
            <h:outputText value="#{l10n.no_of_sessions}" 
                      escape="false" style="white-space:pre-line;" />
        </f:facet>
        ...
    </p:column>
    

    escape="false" 是相关的,因此 html 被转义,然后您可以将任何您想要的内容放在那里。如果您只想设置内容样式,则不需要

    【讨论】:

    • 谢谢!只是为了澄清,它通过删除列的“headerText”属性,并在列内添加 facet 元素对我有用
    【解决方案4】:

    对此最简单的答案是在 style 属性中添加 white-space:pre-line。 请看下面的代码

    <p:column headerText="Number of Sessions" style="white-space:pre-line;width:50px;">
         <h:outputText value="#{value}"></h:outputText>
    </p:column>
    

    【讨论】:

    • 这不是一个好的解决方案,因为每个单词都在一行中。
    猜你喜欢
    • 2011-05-16
    • 2011-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-29
    • 1970-01-01
    • 2012-06-09
    • 1970-01-01
    相关资源
    最近更新 更多