在javascript中使用Thymeleaf显示消息
问题描述:
我正在使用百里香和春天3 mvc。 当我尝试执行Ajax POST请求,我不明白我怎么能显示来自控制器的响应消息我的html页面:在javascript中使用Thymeleaf显示消息
这里有一个代码片段:
$.ajax({
type: "POST",
url: "/settings",
data: "request=" + request,
success: function (response) {
$('#msg').replaceWith('<div id="msg" th:text="response"></div>');
},
});
“响应”是i18n来自控制器的消息。现在,我想用thymeleaf(th:text =“response”)显示此消息。当然,这段代码不起作用,因为它认为响应变量是一个纯字符串。
问题是如何使用百里香显示i18n响应信息。或者也许有其他一些方法来显示i18n消息在html页面(不使用jsp)通过js?
答
只有在服务器上解析并替换Thymeleaf属性(如th:text)。由于这个Ajax响应在浏览器上处理,所以th:text将不会被处理。如果“设置”已经是一个Thymeleaf分辨页,很可能已经i18n'd,你可以简单地这样做:
$('#msg').html(response);
但是,如果你是真正的寻找客户端Thymeleaf标签的JavaScript的处理,请考虑Thymol。