brn*_*nrd 43 html java spring jstl thymeleaf
我有一个文本使用百里香叶呈现三种不同的颜色.
所以我到目前为止测试该值的代码是:
th:if="${evaluation} > 50"
th:if="${evaluation} < 30"
Run Code Online (Sandbox Code Playgroud)
这很有效.
但第三个测试是针对这两者之间的值.所以我尝试过:
th:if="(${evaluation} < 49) ∧ (${evaluation} > 29)"
Run Code Online (Sandbox Code Playgroud)
但是它不起作用,我在解析时遇到了这个错误:
org.thymeleaf.exceptions.TemplateProcessingException: Could not parse as expression: "(${evaluation} < 49) ∧ (${evaluation} > 29)" (/property.html:41)
Run Code Online (Sandbox Code Playgroud)
当然,这些行在标签之间,因为前两个正常工作.
也许操作数和操作数不正确,但百里香叶的文档并没有真正明确这些操作数.
欢迎所有想法!
更新:我从百万富翁论坛得到了答案.做到这一点的方法是:
th:if="${evaluation < 49 and evaluation > 29}"
Run Code Online (Sandbox Code Playgroud)
问题解决了!
brn*_*nrd 54
我从百万富翁论坛得到了答案.做到这一点的方法是:
th:if="${evaluation < 49 and evaluation > 29}"
Run Code Online (Sandbox Code Playgroud)
问题解决了 !
use*_*653 21
这对我有用:
th:if="${evaluation lt 49 and evaluation gt 29}"
Run Code Online (Sandbox Code Playgroud)
小智 10
在我看来,一个更好,更易维护的解决方案可能是在适当的类中编写评估代码.
class Evaluator{
private int value;
....
public boolean isBounded() {
return value < 49 && value > 29;
}
Run Code Online (Sandbox Code Playgroud)
然后在百里香,调用函数:
<p th:if="${evaluator.isBounded()} ...
Run Code Online (Sandbox Code Playgroud)
一些好处:
我希望这有帮助.
我这样做是为了th:if在百里香中有多种情况
<div
th:if="${object.getStatus()} == 'active' and ${object.getActiveDate()}"
th:text="${#dates.format(object.getActiveDate(), 'yyyy-MM-dd')}"
</div>
Run Code Online (Sandbox Code Playgroud)
我在条件之间添加了and运算符。您也可以添加或(如果需要)。
| 归档时间: |
|
| 查看次数: |
61277 次 |
| 最近记录: |