使用Thymeleaf和Spring Boot动态更改html标题值

时间:2018-11-19 00:35:12

标签: spring spring-mvc spring-boot thymeleaf

我的网页正在使用通用包装器渲染每个页面(约20页),并通过Thymeleaf (th:include="wrapper :: page")将其包括在内。我为这些页面添加了ViewController,如下所示:“ registry.addViewController("/").setViewName("index");”(示例)

现在是我的问题..因为我想为每个页面动态更改标题html标签。.
<meta name="title" th:content="${title}"/>)...

如果我可以,可以吗?将我当前的addViewController方法更改为新的Controller,@RequestMapping每个页面并添加模型model.addAttribute("title", titleVariable);
还是添加这么多@RequestMapping方法仅更改html title属性会被视为不好的做法?还有其他更好的方法来动态更改标题标签吗?

2 个答案:

答案 0 :(得分:0)

是否允许使用jQuery?

try_to_do_math

或先将其存储在变量中

$('title').text($('meta[name="title"]')[0].content);

答案 1 :(得分:0)

将其添加到页面布局的头部:

<title layout:title-pattern="$LAYOUT_TITLE - $CONTENT_TITLE">Site name</title>

,当您进行如下模板设置时,它将拉入您所包含页面上的所有标题:

<html xmlns:th="http://www.thymeleaf.org" layout:decorate="~{direcory/pagename}">
<head>
    <title>This title will appear</title>
</head>