为什么Thymeleaf会产生错误的ID?

时间:2015-03-17 14:19:47

标签: thymeleaf

我使用Thymeleaf创建了一个表单。此表单包含文本字段和标签。但是Thymeleaf没有为标签的for属性分配正确的id(或者实际上它将错误的id分配给文本字段)。

这是模板:

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

根据Thymeleaf指南,for属性应该是正确的,但文本字段的id应该附加一个数字。为什么不附加这个号码?

1 个答案:

答案 0 :(得分:1)

据我所知,你只需要迭代。通常,您只需使用for='name'即可。如果你使用seq,我会假设输入元素的th:id=#ids.seq('name')是正确的方法。