我有一个包含布尔'删除'的模型。我生成一个列表,每个元素都包含这个变量。
我在列表中将其打印出来并且我正在尝试使用复选框进行设置,因此它会保存所设置的内容。
模型
public class entry{
private boolean deleted;
public entry(boolean deleted){
this.deleted = deleted;
}
//setters & getters for deleted
}
然后我使用包装类在此列表中读取我的百里香形式。哪个工作正常。
我可以根据每个元素的已删除状态显示已选中/未选中的复选框,但是如果我将复选框从选中更改为未选中状态...则不会将变量保存到该状态。
HTML
<div th:each="entry, stat: *{entryList}">
<td>
<label class="switch">
<input name="index" th:type="checkbox" th:checked="*{entryList[__${stat.index}__].deleted}">
</input> <span class="delete round">
</span>
</label>
</td>
</div>
TH:对象
<form action="#" th:action="@{submitData}" class="saveForm"
method="post" th:object="${entryWrapper}">
...
...
</form>
包装类
public class EntryWrapper {
@Autowired
private List<Entry> entryList;
public EntryWrapper(){
}
public EntryWrapper(List<Entry> entryList){
this.entryList = entryList;
}
public List<Entry> getEntryList(){
return entryList;
}
public void add(final Entry entry){
this.entryList.add(entry);
}
public void setEntryList(List<Entry> entryList){
this.entryList = entryList;
}
}
答案 0 :(得分:0)
而不是th:checked
,您应该使用th:field
<input type="checkbox" th:field="*{entryList[__${stat.index}__].deleted}">
th:field
将生成name,id和checked属性,因此当您发布表单时,它应该填充您的模型对象。