我正在使用h:outputText顯示值。我想限制顯示的值,使得當它的長度大於50個字符時,它被截斷爲50個字符,省略號被附加到截斷值。例如:JSF 2.0:將h:outputtext的值限制爲特定數量的字符
This is some text that has been trun...
我知道我可以在後臺bean實現這一點,但我想知道是否有人知道,能做到這一點任何標籤的無需添加代碼託管了。看起來像一個常見的用例。
謝謝。
我正在使用h:outputText顯示值。我想限制顯示的值,使得當它的長度大於50個字符時,它被截斷爲50個字符,省略號被附加到截斷值。例如:JSF 2.0:將h:outputtext的值限制爲特定數量的字符
This is some text that has been trun...
我知道我可以在後臺bean實現這一點,但我想知道是否有人知道,能做到這一點任何標籤的無需添加代碼託管了。看起來像一個常見的用例。
謝謝。
按照「JSF for nonbelievers」中的說明使用自定義JSF轉換器。 Here's文本截斷轉換器的一個例子。
您可以使用JSF EL ..例如
<h:outputText value="#{bean.string.length() gt 50 ? bean.string.substring(0,47).concat('...') : bean.string}" />
如前所述BalusC,OmniFace的of:abbreviate()可能是你的問題很好的解決方案:
<p>Abbreviate a long string: #{of:abbreviate(string1, 20)}</p>
剛剛使用過,效果很好,用於引用命名空間import是:xmlns:of =「http://omnifaces.org/functions」 – 2016-04-21 12:49:59
感謝。我還在Core Java Server Faces第3版中找到了一個部分,其中介紹瞭如何實現自定義轉換器和轉換器標籤。 – 2012-03-26 14:53:08