使用jQuery Thymleaf,装载片段(Thymleaf , loading fragment

2019-10-29 08:17发布

我和春天检查Thymeleaf这些天。 我遇到的碎片问题。 我已经使用写一个Spring控制器@Controller ,有一个方法@PostMapping以下是方法

@PostMapping(value="/xxx/yyy/add",consumes="application/json",produces="application/json")
public @ResponseBody AModel addMethod(@Valid @RequestBody AModel aModel, BindingResult bindingResult)

我使用$.ajax法POST数据到/ XXX / YYY /添加URL。 JSON映射第i个AMODEL对象和它的作品。 但我返回一个AModel对象作为JSON响应。 不是一个字符串提thymeleaf片段。 我试图重新加载thymeleaf片段包含数据表。 可能有人点我在怎么可以这样做的正确的方向? 谢谢。

Answer 1:

试试这个。

@RequestMapping(value = "/abc", method = RequestMethod.GET, produces = "application/json")
private ResponseBody test( HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse )
{
    Response response = new Response<String>();
    WebContext webContext = new WebContext( httpServletRequest, httpServletResponse, servletContext );



    response.setData( generateTemplate( webContext, viewResolver, "fragmentpath") );
    response.setMessage( "Success" );
    response.setStatus(SUCCESS );

    return response;

}

  public static String generateTemplate( WebContext ctx, ViewResolver viewResolver, String baseTemplate)
{

    TemplateEngine engine = ( ( ThymeleafViewResolver ) viewResolver ).getTemplateEngine();

    String renderedHtml = engine.process( baseTemplate, ctx );
    return renderedHtml;

}


文章来源: Thymleaf , loading fragments using jQuery