Почему Thymeleaf генерирует неправильный идентификатор?

Я создал форму, используя Thymeleaf. Эта форма содержит текстовое поле и метку для него. Но Thymeleaf не назначает правильный идентификатор for атрибут метки (или фактически он присваивает неверный идентификатор текстовому полю).

Это шаблон:

<form action="#" th:action="@{/test}" th:object="${nameBean}" method="post">
<div class="form-group" th:classappend="${#fields.hasErrors('name')}? has-error">
    <label class="control-label" th:for="${#ids.next('name')}">Name</label>
    <input type="text" class="form-control" placeholder="Enter your name" th:field="*{name}" />
</div>
<button type="submit" class="btn btn-default">Send</button>
</form>

И это сгенерированный HTML:

<form action="/test" method="post">
  <div class="form-group">
    <label class="control-label" for="name1">Name</label>
    <input type="text" class="form-control" placeholder="Enter your name" id="name" name="name" value="">
  </div>
  <button type="submit" class="btn btn-default">Send</button>
</form>

for атрибут должен быть правильным в соответствии с руководством Thymeleaf, но к идентификатору текстового поля должен быть добавлен номер. Почему этот номер не добавлен?

1 ответ

Решение

Насколько я понимаю, это нужно только для итераций. Обычно вы можете просто использовать for='name', Если вы используете seq, я бы предположил, что th:id=#ids.seq('name') на входном элементе будет правильный путь.

Другие вопросы по тегам