从Thymeleaf调用并加载Spring MVC控制器请求方法

时间:2017-08-26 16:05:06

标签: spring spring-mvc spring-boot thymeleaf

我正在使用Spring Boot 1.5.4(Spring MVC)和Thymeleaf 3.0.6(布局方言2.2.2)

假设我使用Thymeleaf模板(模板A)从Spring MVC Controller方法渲染模型,该模板输出HTML A.

是否可以从模板A中调用/调用另一个Spring MVC控制器方法(然后将使用不同的百万富翁模板呈现模型)输出HTML B,并将渲染结果加载到HTML A?

类似于struts2动作标记对executeResult = true Param的作用。 https://www.tutorialspoint.com/struts_2/struts_action_tag.htm

我已经查看过thymeleaf include和replace,但它们似乎只能加载html片段而不是整个Spring MVC请求

1 个答案:

答案 0 :(得分:0)

您可以尝试向Spring MVC控制器方法发出一个AJAX请求,该方法将返回模板B.

然后,一旦有了响应,就可以将响应设置为DOM中的现有html元素,例如:

$.get("your_end_point", function(data, status){  
 document.getElementById("your_template_B_Container_DIV_ID").appendChild(data);
});

这只是一个猜测,同时请记住,如果您使用bodyhead创建模板...这可能无效,请尝试使用不带{{1的模板}或body标记。例如,您可以尝试使用仅使用head标记制作的模板,并查看是否可以渲染它。