簡體   English   中英

如何將自定義內容(如換行符)放入 p:column 標題中

[英]How to put custom content like a linebreak inside p:column header

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

數據表

第二列的標題占用太多空間。 因此,我想在Number of & Sessions之間放置一個換行符,並垂直對齊表格的標題。 我試圖減少列的寬度,但它並沒有自動導致換行。

此外,由於標題名稱是從l10n.properties文件中檢索的,我也嘗試將其設置為Number of /n Sessions/n被打印為普通字符串。

更新:我還嘗試將該屬性設置為Number of <br/> Sessions 但是,在生成的 HTML 代碼中, <br/>消失了,表格看起來與上面完全相同。

如果您能給我建議,我將不勝感激。

此致,

首先,您需要從列中刪除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 被轉義,然后你可以把你想要的任何東西放在那里。 如果您只想設置內容樣式,則不需要

嘗試這個

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

如果使用屬性文件中的“會話數”,請在屬性文件中嘗試以下操作...

myString = Number of \
           Sessions

如果是 CSS,則可以在“Number of”之后添加<br/>標簽。 我剛看到你編輯的帖子。

您在 Firebug 中所做的實際上是“編輯文本”,但是,您需要做的是“右鍵單擊”然后“編輯 HTML”。 這樣當你插入
標簽,文本會中斷並移到下一行。

對此最簡單的答案是在 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>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM