我在项目中使用Thymeleaf进行布局,但无法使页面标题动态化。
Layout.jsp
<head th:fragment="headerfragment">
<title th:text="@{page-title}"></title>
<!-- Bootstrap Core CSS -->
<link th:href="@{/resources/css/bootstrap.min.css}" rel="stylesheet"
type="text/css" />
</head>
Page.jsp
<head th:include="layout :: headerfragment"></head>
当呈现最终页面时,我将标题视为 页面标题 而不是实际文本
在我的控制器中,我设置了页面标题属性
modelMap.addAttribute("page-title", "Home");
我可能不会这样做,因为我是新的百里香。请帮我找出解决方案。
答案 0 :(得分:4)
正确的语法为${page-title}
所以在您的示例中应将其更改为<title th:text="${page-title}"></title>
答案 1 :(得分:-1)
案例a:如果您希望在页面标题后附加站点名称
<title th:text="${'My Site Name - ' + page-title}"></title>
情况 b:如果您不想在页面标题后附加站点名称
<title th:text="${page-title}"></title>
注意:我在这里添加我的答案,因为 ADTC 的评论不正确,并给出了无效的表达式错误消息。