Thymeleaf/Spring:如何检查消息属性是否存在
是否可以检查消息属性是否存在 示例:我想删除仅包含消息属性的循环中的可折叠div元素Thymeleaf/Spring:如何检查消息属性是否存在,spring,thymeleaf,Spring,Thymeleaf,是否可以检查消息属性是否存在 示例:我想删除仅包含消息属性的循环中的可折叠div元素 [...] 你好,世界! 如果没有付款的其他信息,则不需要该元素。 假设我们有IDsDIRECT\u DEBIT、PAYPAL和SAFERPAY以及以下消息属性: payment.DIRECT_DEBIT=Direct debit payment.DIRECT_DEBIT.additionalInfo=Direct debit info text... payment.PAYPAL=PayPal payme
[...]
你好,世界!
如果没有付款的其他信息,则不需要该元素。
假设我们有IDsDIRECT\u DEBIT
、PAYPAL
和SAFERPAY
以及以下消息属性:
payment.DIRECT_DEBIT=Direct debit
payment.DIRECT_DEBIT.additionalInfo=Direct debit info text...
payment.PAYPAL=PayPal
payment.PAYPAL.additionalInfo=PayPal info text...
payment.SAFERPAY=Saferpay
正如您所看到的,
SAFERPAY
没有additionInfo消息属性,只有当元素不为null且不等于空字符串时,才可以使用th:if添加元素(我不知道您是如何实现该对象的)
你好,世界!
。。。您还应该更改id属性。在您的实现中,可能有多个id为“collapse1”的元素
如果您也不想显示输入字段,请使用th:block元素并将th:If属性放置在其中:
<div th:each="payment : ${paymentList}">
<th:block
th:if="${ ... && ... }"
>
<input ...>
<div ...>
</div>
</th:block>
</div>
您应该使用对象检查消息是否存在。例如:
th:if="${#messages.msgOrNull('payment.' + payment.id + '.additionalInfo') != null}"
<div id="collapse1" th:if="${#messages.msgOrNull('payment.' + payment.id + '.additionalInfo') != null}" th:utext="#{|payment.${payment.id}.additionalInfo|}" [...]>
Hello, world!
</div>
th:if=“${#messages.msgOrNull('payment.+payment.id+'.additionalInfo')!=null}”
你好,世界!
它不是一个对象($
)。它是一个消息属性(#
)。id属性已被更改。我使用[…]表示还有其他与我的问题不相关的属性。不确定该用户是否值得投反对票。。。只是想帮忙
th:if="${#messages.msgOrNull('payment.' + payment.id + '.additionalInfo') != null}"
<div id="collapse1" th:if="${#messages.msgOrNull('payment.' + payment.id + '.additionalInfo') != null}" th:utext="#{|payment.${payment.id}.additionalInfo|}" [...]>
Hello, world!
</div>