JSF 2.0: предельное значение h: выходной текст для определенного количества символов - PullRequest
13 голосов
/ 26 марта 2012

Я использую h: outputText для отображения значения.Я хотел бы ограничить отображаемое значение таким образом, чтобы, когда его длина превышала 50 символов, оно усекалось до 50 символов и к усеченному значению добавлялся многоточие.Например:

This is some text that has been trun...

Я знаю, что могу добиться этого в бине поддержки, но мне было интересно, знает ли кто-нибудь о каких-либо тегах, которые могут достичь этого, не добавляя код в управляемый объект.Похоже на общий случай использования.

Спасибо.

Ответы [ 3 ]

26 голосов
/ 28 ноября 2012

Вы можете использовать JSF EL .. например

<h:outputText value="#{bean.string.length() gt 50 ? bean.string.substring(0,47).concat('...') : bean.string}" />
5 голосов
/ 28 января 2016

Как уже упоминалось BalusC , из: abbreviate () OmniFace может быть хорошим решением для вашей проблемы:

<p>Abbreviate a long string: #{of:abbreviate(string1, 20)}</p>
4 голосов
/ 26 марта 2012

Используйте пользовательские JSF-конвертеры, как описано в « JSF для неверующих ». Вот пример конвертера усечения текста.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...