一尘不染

如何从其他变量设置th thymeleaf:field值

spring

我有一个简单的文本输入字段,我必须在其中设置一个对象的默认值,并将其最终值保存在其他对象中。以下代码无法正常工作。

<div th:object="${form}">
    <input class="form-control"
           type="text"
           th:value="${client.name}"  //this line is ignored
           th:field="*{clientName}"/>
</div>

表单是DTO对象,客户端是数据库中的实体对象。

解决这种情况的正确方法是什么?

不工作是指-初始值为client.name =“ Foo”和form.clientName = null。我需要输入字段的显示值为“ Foo”,并在表单提交后将form.clientName值更改为“ Foo”。但是输入字段不显示任何内容,并且在提交表单上。clientName值仍为null;

如果有人感兴趣,请使用以下结构解决此问题(在另一个问题中找到答案)。

th:attr="value = ${client.name}"

阅读 1325

收藏
2020-04-19

共1个答案

一尘不染

你可以采用这种方法。

而不是th:field使用html idname。设定值使用th:value

<input class="form-control"
           type="text"
           th:value="${client.name}" id="clientName" name="clientName" />

希望这能够帮到你

2020-04-19