2015-01-09 3 views
6

У меня есть форма, где я хочу редактировать некоторые пользовательские данные. Таким образом, уже сохраненные данные помещаются как th: значение, и после отправки я проверяю с помощью проверки весны и хочу вернуть форму на неправильном вводе. Я хочу, чтобы поле ввода имело значение ввода пользователем, но оно всегда дает мне сохраненный ввод.thymeleaf: th: значение игнорируется при использовании th: field

Вот как поле ввода выглядит

<input type="text" th:value="${product.name}" th:field="*{name}" th:errorclass="fieldError"/> 

Если форма загружается в первый раз, входные поля должны иметь значение уже сохраненные данные.

Если он загружен после отправки и с ошибкой проверки, поля ввода должны иметь значение ввода пользователя.

Есть ли способ?

Спасибо!

+0

Почему вы используете й: значение? Ответ на последний вопрос - это использование только поля: не могли бы вы попробовать? –

+0

Причина Я хочу установить значение при загрузке сохраненных данных. – Raphael

+0

Но если вы работаете с формой и заполняете объект продукта в своем контроллере, это будет работать нормально. Не могли бы вы включить код вашей формы и ваш контроллер? –

ответ

13

Атрибут -й: поле заменит атрибуты следующего значения, идентификатора и имени в вашем ввода тега.

Вместо этого используйте обычный -й: идентификатор, го: значение и го: имя без использования -го: поле. Тогда вы получите то, что хотите.

Тогда это будет выглядеть следующим образом:

<input type="text" th:value="${product.name}" th:name="name" th:id="name" th:errorclass="fieldError"/> 

Подобный ответ здесь: How to set thymeleaf th:field value from other variable

Смежные вопросы