我想使用thymeleaf-loop的索引作为里面的arrayindex。例子:
<div th:each="service : ${requestedServices}">
<div class="col-sm-1">
<input type="checkbox" th:checked=*{service[index of loop?].requested}">
</div>
</div>
我已经尝试在数组中使用serviceStat. index
${请求服务}是请求服务的数组列表
class RequestedService {
Service service
boolean requested
}
class Service {
String name;
int value;
}
我希望能为我的问题找到答案
serviceStat. index
是索引数组的正确方法(请参阅保持迭代状态的最后一段-如果您没有显式设置状态变量,Thymeleaf将始终通过在迭代变量的名称后面添加Stat来为您创建一个:
)。
话虽如此,因为您在th: field
属性中使用它,所以您必须对索引使用预处理。
<div th:each="service : ${requestedServices}">
<div class="col-sm-1">
<input type="checkbox" th:checked="*{service[__${serviceStat.index}_].requested}" />
</div>
</div>
(您可能还对Thymeleaf关于动态字段的教程感兴趣。)