我正在使用Thymeleaf和Spring Boot。
我有一个使用以下脚本创建的表:http://bootstrap-table.wenzhixin.net.cn/

然后我添加了一个javascript:

<script th:inline="javascript">
    /*<![CDATA[*/
    $(function() {
        $("#list").on('click-row.bs.table',
        function(e, row, $element, field) {
            window.location = /*[[@{/url/}]]*/+row.id;
        });
    });
    /*]]>*/
</script>


如您所见,我添加了/*[[@{/url/}]]*/来生成正确的url,但是我必须将其与id连接起来。

问题是它永远不会将id附加到URL ..为什么?
我该如何解决?

最佳答案

您可以先将Thymeleaf Java对象放在一些javascript变量中,然后再像平常在javascript中一样使用它。

var url = /*[[@{/url/}]]*/
window.location = url + row.id;


12.2 Script inlining (JavaScript and Dart) documentation


  Thymeleaf将执行表达式并插入结果,但是它
  还将在内联表达式之后删除该行中的所有代码
  本身(静态显示时执行的部分)。

09-16 17:31