春天百里香文本下一行

时间:2018-04-16 04:52:13

标签: html spring thymeleaf

我想将控制器上的消息传回我的百里香叶模板并将值设置为多行。

在我的控制器中,我设置了这样的文字。

String message="item A \n item B \n Item C \n Item D"; //it could be 4 values, could 10 values.

modelAndView.addObject("successMessage", message);

在我的百里香模板中,我将其设置为这样。

<p th:utext="${successMessage}"></p>

我希望它显示为

item A
item B
item C
item D

在前端,而不是全部在一行。我该怎么做?非常感谢。

2 个答案:

答案 0 :(得分:0)

您可以使用th:text。你的控制器需要改变代码。像这样。

String message = "Item A <br/>Item B<br/>";

答案 1 :(得分:0)

1)我的建议是将其作为数组传回。

List<String> messages = Arrays.asList("item A", "item B", "Item C", "Item D");
modelAndView.addObject("successMessages", messages);

HTML:

<p th:each="message: ${messages}" th:text="${message}"></p>

2)如果你不想这样做,你当然可以使用th:utext,但是你必须使用<br />而不是\n

3)另一个选择是继续使用\n并在你的CSS中使用white-space: pre

<p style="white-space: pre;" th:text="${successMessage}"></p>