Java 将布尔值设置为th:checked

Java 将布尔值设置为th:checked,java,checkbox,thymeleaf,Java,Checkbox,Thymeleaf,我有一个模型,其中包括一个布尔“删除”。我生成一个列表,每个元素中都有这个变量 我将它打印在一个列表中,并尝试使用一个复选框进行设置,因此它会保存所有设置 型号 public class entry{ private boolean deleted; public entry(boolean deleted){ this.deleted = deleted; } //setters & getters for deleted } 然后,我使用包装器类在列表中读取我的thymelea

我有一个模型,其中包括一个布尔“删除”。我生成一个列表,每个元素中都有这个变量

我将它打印在一个列表中,并尝试使用一个复选框进行设置,因此它会保存所有设置

型号

public class entry{
private boolean deleted;

public entry(boolean deleted){
this.deleted = deleted;
}

//setters & getters for deleted
}
然后,我使用包装器类在列表中读取我的thymeleaf表单。这很好用

根据每个元素的已删除状态,我可以使复选框显示为选中/未选中,但如果我将复选框从选中更改为未选中,它将不会将变量保存到该状态

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:Object

<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;
    }
}
公共类入口包装器{
@自动连线
私有列表条目列表;
公共入口包装器(){
}
公共入口包装器(列表入口列表){
this.entryList=entryList;
}
公共列表getEntryList(){
返回入口列表;
}
公共作废添加(最终条目){
this.entryList.add(条目);
}
公共void setEntryList(列表entryList){
this.entryList=entryList;
}
}

您应该使用
th:field,而不是
th:checked

<input type="checkbox" th:field="*{entryList[__${stat.index}__].deleted}">


th:field
将生成名称、id和选中属性,因此当您发布表单时,它应该填充您的模型对象。

entryList是什么样子的?列表另外,您的th:object是什么?包含了包装类内容和th:object。@{submitData}只会将用户带到列表视图,而无法编辑条目。谢谢:)我已经尝试过了,但根本无法选择复选框。然而,我相信这是使用的一个问题。它现在似乎起作用了!