Thymeleaf在片段上呈现

时间:2017-09-07 00:19:23

标签: java html spring thymeleaf

我对百里香有麻烦,因此对于这个文档thymeleaf我能够使用片段渲染我的html页面的一部分,我试图将其用于控制器代码

@RequestMapping("/showContentPart")
public String showContentPart() {
...
return "index :: content";
}

和HTML

<div id="content">
  Only this will be rendered!!
</div>

然而我想要的是用户点击导航栏上的链接并且div应该渲染并且布局应该保持静态,换句话说..我想维护我的布局并更改div内容,但是当我点击链接我得到的内容没有我的布局,我做错了什么?

1 个答案:

答案 0 :(得分:1)

您只需将片段名称作为模型属性传递,即可替换布局中的内容:

@RequestMapping("/showContentPart")
public String showContentPart(Model model) {
    model.setAttribute("contentName", "content")
    return "layoutPage";
}

在布局页面中,您可以包含以下内容:

<div id="layout">
    <div th:include="index :: ${contentName}"></div>
</div>

showContentPart方法将返回您的布局页面,但包含所需内容。如果您想要包含其他一些内容,您只需制作类似的方法,但使用不同的&#34; contentName&#34;模型属性。