gpt4 book ai didi

thymeleaf - 如何使用 thymeleaf 条件 - if - elseif - else

转载 作者:行者123 更新时间:2023-12-04 11:12:47 25 4
gpt4 key购买 nike

我有一个小问题,我必须将一个选择的不同选择返回到一个td使用 thymeleaf ,我尝试下一句:

<td style="white-space: nowrap">
<span th:class="${linea.estado}? 'label label-success' : 'label label-danger' : 'label label-warning'"
th:text="${linea.estado}? #{label.glineas.estado.iniciado} : #{label.glineas.estado.finalizado} : #{label.glineas.estado.configurado}">
</span>
</td>

但是我有一个问题,因为条件给了我一个很大的失败,因为无法解析表达式。只有两个条件(iniciado 和 finalizado)没有问题,但我需要为表单中的选择获取正确的标签。

有人知道在 thymeleaf 中使用 if elseif else 句子的正确句子吗?

2.0 现在我试图用下一个来解决这个问题:

<td style="white-space: nowrap">
<span th:if="${linea.estado} == 'Iniciado'" class="label label-success" th:text="#{label.glineas.estado.iniciado}"></span>
<span th:if="${linea.estado} == 'Finalizado'" class="label label-danger" th:text="#{label.glineas.estado.finalizado}"></span>
<span th:if="${linea.estado} == 'Configuracion'" class="label label-warning" th:text="#{label.glineas.estado.configurado}"></span>
</td>

解决方案是完美的,现在一切正常。谢谢大家。

最佳答案

您的条件运算符包含 3 个结果。它应该有2个这样的。

condition ? first_expression : second_expression;

在你的情况下。我假设 linea.estadoboolean值(value)
<td style="white-space: nowrap">
<span th:class="${linea.estado} ? 'label label-success' : 'label label-danger'"
th:text="${linea.estado}? #{label.glineas.estado.iniciado} : #{label.glineas.estado.finalizado}">
</span>
</td>

如果您想输出 3 个值并给出 linea.estado是一个可能包含 'WARN', 'DANGER', 'INFO' 的字符串那么你可以做这样的事情。
<span th:class="'label label-' + ((${linea.estado} == 'SUCCESS') ? 'success' : (${linea.estado} == 'DANGER') ? 'danger' : 'warning')"                   
th:text="...">
</span>

但是 更清洁的解决方案将是 像这样的东西
<span th:if="${linea.estado} == 'SUCCESS'" class="label label-success" th:text="#{label.glineas.estado.iniciado}"></span>
<span th:if="${linea.estado} == 'DANGER'" class="label label-danger" th:text="#{label.glineas.estado.finalizado}"></span>
<span th:if="${linea.estado} == 'WARN'" class="label label-warning" th:text="#{label.glineas.estado.configurado}"></span>

或使用 Switch正如帕特里克 LC 所提到的
  • 注意语法错误,因为我没有在运行时测试任何代码
  • 关于thymeleaf - 如何使用 thymeleaf 条件 - if - elseif - else,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29561449/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com