Thymeleaf片段:
<div th:fragment="assets">
<script src="myscript"></script>
<script src="myscript2"></script>
</div>
这段代码插入片段:
<div th:replace="fragments/assets :: assets"></div>
如何只包含没有包装器的内容?
<script src="myscript"></script>
<script src="myscript2"></script>
答案 0 :(得分:7)
您可以使用th:block仅包含块的内容。
将您的片段定义为 -
<th:block th:fragment="assets">
<script src="myscript"></script>
<script src="myscript2"></script>
</th:block>
包括这样 -
<th:block th:include="fragments/assets :: assets"></th:block>
希望这会对你有所帮助:)。
答案 1 :(得分:5)
尝试下面的
<div th:fragment="assets" th:remove="tag">
<script src="myscript"></script>
<script src="myscript2"></script>
</div>
答案 2 :(得分:1)
我发现处理脚本标记的最佳方法是使用Thymeleaf Layouts,因为当使用th:include或th:replace时,片段总是嵌套在标记内。
此外,我使用的一种有用方法是在布局模板的底部正常添加常用脚本,然后添加最终脚本内容块,例如:
...
<script type="text/javascript" src="/resources/js/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="/resources/js/bootstrap.min.js"></script>
<div layout:fragment="script"></div>
</body>
</html>
然后使用该模板的页面可以在&#34;脚本中指定任何额外的javascript&#34;块:
<script th:inline="javascript" layout:fragment="script" type="text/javascript">
/*<![CDATA[*/
// Some javascript...
/*]]>*/
答案 3 :(得分:1)
Yout Thymeleaf片段:
<div th:fragment="assets" th:remove="tag">
<script src="myscript"></script>
<script src="myscript2"></script>
</div>
您片段的代码插入:
<div th:replace="fragments/assets :: assets"></div>
这应该像:
<script src="myscript"></script>
<script src="myscript2"></script>
答案 4 :(得分:1)
使用此:
<div id="testId" th:include="fragments/assets :: assets"></div>
它还将在外部标签中插入指定的片段作为其主体,但不包含fragment标签。