如何取消 Thymeleaf 中输入字段的默认值?
Posted
技术标签:
【中文标题】如何取消 Thymeleaf 中输入字段的默认值?【英文标题】:How to unescape a default value of an input field in Thymeleaf? 【发布时间】:2021-01-06 10:38:02 【问题描述】:我将模型对象传递给要在表单中使用的视图。尽管如此,我需要取消其中一个参数,当我使用 #uris.unescapePathSegment
时 Springboot 会抛出错误,因为它找不到相关的 bean
代码
<tr>
<td colspan="8"><textarea rows="15" cols="150"
th:field="$#uris.unescapePathSegment(excerpt.comments)" /></textarea></td>
<td class="validation-comments" colspan="5"
th:if="$#fields.hasErrors('excerpt.comments')"
th:errors="$excerpt.comments"></td>
</tr>
错误
java.lang.IllegalStateException: Neither BindingResult nor plain target object for bean name '#uris' available as request attribute
我应该如何解决这个问题?在现场使用之前,是否可以在 Thymeleaf 中取消转义参数,还是应该在控制器中取消转义?
【问题讨论】:
【参考方案1】:th:field
不能是表达式。它只能是一个选择表达式 *...
(see the docs on inputs),它指向表单支持 bean (th:object
) 上的单个字段。如果您确实需要取消转义,那么在您到达 *excerpt.comments
时它应该已经取消转义。
【讨论】:
以上是关于如何取消 Thymeleaf 中输入字段的默认值?的主要内容,如果未能解决你的问题,请参考以下文章
使用默认值声明 Thymeleaf 变量后如何对其进行算术运算?