下面HTML文件中的javascript代码
<script th:inline="javascript">
.
.
.
for (var i = 0, l = 100; i < l; i++) {
list.push($.extend({}, sampleData[(Math.floor(Math.random() *
sampleData.length))]));
}
百里香错误消息是
由以下原因引起:org.thymeleaf.exceptions.TemplateProcessingException:可能 不能解析为表达式:“ Math.floor(Math.random()* sampleData.length)”(模板:“ gridTest”-第165行,第63行)
我该如何解决? 谢谢。
答案 0 :(得分:0)
文本[(...)]
是JavaScript inlining的变体,因此Thymeleaf试图将[(Math.floor(Math.random() * sampleData.length))]
解析为Thymeleaf表达式(并因此引发错误)。
在任何情况下,都不需要使用Math.floor(...)
表达式周围的括号,因此您可以删除它们,并且Thymeleaf可以使用。
<script th:inline="javascript">
.
.
.
for (var i = 0, l = 100; i < l; i++) {
list.push($.extend({}, sampleData[Math.floor(Math.random() * sampleData.length)]));
}
</script>