Thymeleaf + Spring布尔条件

时间:2017-03-11 18:28:58

标签: html spring-mvc thymeleaf

我有一个模板,我想应用一些条件来显示1个图标或另一个,但没有显示图标,我只在单元格中看到文本(true,false)

<tr th:each="systemAlarm : ${systemAlarms}">

                                        <td class="col_description"  th:text="${systemAlarm.description}" ></td><!-- ID -->
                                        <td class="col_name" th:text="${systemAlarm.enabled}">

                                        <span th:if="${systemAlarm.enabled}"  >
                                            yes<i class="fa fa-bullseye fa-2x" style="color:green; text-align: center;" aria-hidden="true"></i>
                                        </span>
                                        <span th:if="${!systemAlarm.enabled}">
                                            no<i class="fa fa-bullseye fa-2x"  style="text-align: center;" aria-hidden="true"></i>
                                        </span>

                                        </td><!-- NAME -->
                                    </tr>        

1 个答案:

答案 0 :(得分:2)

在原始的html中,您有:

<td class="col_name" th:text="${systemAlarm.enabled}">

th:text属性会覆盖<td>的内容 - 其中包含图标的html。你需要删除它。所以,它应该是这样的:

<tr th:each="systemAlarm: ${systemAlarms}">
  <td class="col_description" th:text="${systemAlarm.description}" />
  <td class="col_name">
    <span th:if="${systemAlarm.enabled}">
        yes<i class="fa fa-bullseye fa-2x" style="color:green; text-align: center;" aria-hidden="true"></i>
    </span>
    <span th:if="${!systemAlarm.enabled}">
        no<i class="fa fa-bullseye fa-2x"  style="text-align: center;" aria-hidden="true"></i>
    </span>
  </td>
</tr>