JSP

时间:2016-01-08 12:12:00

标签: java html jsp newline

我需要从java bean中调用一个方法,该方法返回一个由多行组成的字符串

但是我需要在JSP表单中插入换行符。

在java bean中,我使用以下方法:

for (String s : descriptionContrats){
        if(s.startsWith("Contrat")){                        
            contratsBuilder.append(s+"\r\n ");  

         }                  
 }  
 contrats=contratsBuilder.toString();

我希望根据迭代次数在多行中显示字符串contrats

但是当在JSP中调用变量时我会按以下方式使用它:

<tr><td><%- contrats %> </td></tr>

它只在一行中打印为单个字符串。

更新

我已经将contratsBuilder.append(s+"\r\n ");替换为contratsBuilder.append(s).append("<br/>");,但我的<br />标记已转换为html中的&lt;br /&gt;。但是当它在浏览器上呈现时,它有<br />,因此没有换行符???。

1 个答案:

答案 0 :(得分:4)

您正在以HTML格式显示该页面,因此您需要使用HTML的换行标记 - <br/>

for (String s : descriptionContrats) {
    if (s.startsWith("Contrat")) {
        contratsBuilder.append(s).append("<br/>");
    }
}  
contrats = contratsBuilder.toString();