我使用百里香和弹簧。 我尝试使用内联javascript。
<script th:inline="javascript">
$("#genericTable").bootstrapTable({
url: /*[[${url}]]*/ 'generic',
...
});
在服务器端我做
model.addAttribute("url", "/rest/vehicles");
我得到了
url:“\ / rest \ / vehicles”,
为什么有些字符被添加到字符串中?
修改
与
url: /*[[@{${url}}]]*/ 'generic',
首先/就像被删除一样,所以调用它是无效的......
答案 0 :(得分:2)
您可以尝试这样的事情:
<script type="text/javascript" th:inline="javascript">
/*<![CDATA[*/
$("#genericTable").bootstrapTable({
url: /*[[${url}]]*/ 'generic',
...
});
/*]]>*/
</script>
答案 1 :(得分:0)
[(...)]
应该有帮助
我面临的问题示例:
$.getJSON('[[@{/management/users/search/unit/}]]' + value, function(data) {
已转换为:
$.getJSON('"\/management\/users\/search\/unit\/"' + value, function(data) {
使用[(...)]
:
$.getJSON('[(@{/management/users/search/unit/})]' + value, function(data) {
已转换为:
$.getJSON('/management/users/search/unit/' + value, function(data) {
请注意,尽管[[...]]对应于th:text(即结果将被转义为HTML),但是[[...]]对应于th:utext,并且将不执行任何HTML转义。
答案 2 :(得分:0)
我知道这个问题有点老了,但答案并没有解决问题,或者我遇到的问题。要删除转义,我建议编写这样的代码(双引号仅用于 javascript 目的):
<script type="text/javascript" th:inline="javascript">
/*<![CDATA[*/
$("#genericTable").bootstrapTable({
url: "[(@{ ${url} })]",
...
});
/*]]>*/
</script>