百里香叶 javascript onload=location.href

thymeleaf javascript onload=location.href

希望这是一道简单的语法题:

我想创建一个 onload 语句,编译后将如下所示:

<body onload="location.href='#tutanchor'">

我的表达语言尝试如下:

<body th:attr="onload='location.href='+${anchorname}">

这不起作用,因为它缺少围绕锚点的单引号。 但是,如果我添加额外的单引号,thymeleaf 无法解析。

有什么建议吗?

使用 &apos; 怎么样?

<body th:attr="onload='location.href=&apos;'+${anchorname}+'&apos;'">

我对 thymeleaf 不熟悉,所以这可能不会像我预期的那样工作。 The documentation 表示 \ 是引号的转义字符。如果 &apos; 不起作用,请尝试转义引号:

<body th:attr="onload='location.href=\''+${anchorname}+'\''">

这引出了一个问题,为什么不只是 use a <script> tag

<script th:inline="javascript">
/*<![CDATA[*/
    location.href = /*[[${anchorname}]]*/ '#';
/*]]>*/
</script>