我正在玩Spring validating form input示例 - 带有Thymeleaf视图的java spring mvc。我已经能够毫无问题地将消息传递到视图中。这些显示示例要求他们...
e.g。
<td th:if="${#fields.hasErrors('name')}" th:errors="*{name}">Name Error</td>
我试图找到一种方法将它们放入html输入验证属性中,所以我尝试了以下内容(下面的整页)
<td><input type="text" th:field="*{age}" **required="required" data-errormessage-value-missing="${#fields.errors('age')}" data-errormessage="${#fields.errors('age')}"**/></td>
这样做并不好,显示的验证信息是$ {#fields.errors('age')}!有没有办法将绑定错误推送到属性中,还是我误解了它的工作方式?
感谢您提前提供任何帮助。
Page html
<html>
<body>
<form action="#" th:action="@{/}" th:object="${personForm}" method="post">
<table>
<tr>
<td>Name:</td>
<td><input type="text" th:field="*{name}" required="required" data-errormessage-value-missing="Custom Message" /></td>
<td th:if="${#fields.hasErrors('name')}" th:errors="*{name}">Name Error</td>
</tr>
<tr>
<td>Age:</td>
<td><input type="text" th:field="*{age}" required="required" data-errormessage-value-missing="${#fields.errors('age')}" data-errormessage="${#fields.errors('age')}"/></td>
<td th:if="${#fields.hasErrors('age')}" th:errors="*{age}">Age Error</td>
</tr>
<tr>
<td><button type="submit">Submit</button></td>
</tr>
</table>
</form>
</body>
</html>
答案 0 :(得分:0)
Thymeleaf仅评估以 th:开头的属性,因此为了做到这一点,您必须使用 th:attr 。您的标记应如下所示:
class MaBase < ActiveRecord::Migration
def change
create_table :connexion
add_column :connexion, :ip, :string
add_column :connexion, :user_agent, :string
add_column :connexion, :nb, :integrer
add_column :connexion, :date, :datetime
create_table :recherche
add_column :recherche, :ip, :string
add_column :recherche, :recherche, :string
add_column :recherche, :date, :datetime
create_table :membre
add_column :membre, :ip, :string
end
end
你也可以使用这个插件来评估数据标签,但我还没有使用它,所以我无法评论它的工作情况:https://github.com/mxab/thymeleaf-extras-data-attribute