如何为f:selectItems中的标签添加换行符

时间:2014-10-23 09:36:21

标签: jsf

我在SelectOneMenu中使用,其中selectItems将从数据库加载。 labele值非常大,适合浏览器,所以我想将标签分成多行。请让我知道它是Possibe。

我在标签文字中添加了换行符('\ n')。仍然无法正常工作

String description = "22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222";
        StringBuilder sb = new StringBuilder();
        String[] split = description.split("(?<=\\G.................................................)");
        for(String s : split){
            sb.append(s).append("\n");
        }

1 个答案:

答案 0 :(得分:1)

元素<h:selectOneMenu>被翻译为<select> HTML元素,而<f:selectItem><f:selectItems>被翻译为<option> HTML元素。

浏览器不会在这些元素中管理换行符。请参阅:Line Break in HTML Select Option?

如上所述,唯一的方法是创建自定义HTML并使用JS使其看起来像本机<select>