将图标添加到元素中的(链接)元素/元素

时间:2016-08-30 16:31:54

标签: java spring thymeleaf

我需要创建一个呈现此HTML的元素,以便该图标是a内部HTML的一部分:

<li>
    <a href="/pricing/de" id="de">
        <i class="fa fa-circle-o"></i>Deutschland
    </a>
</li>

我目前的方法是以下

<li th:each="country : ${countryList}">
    <a th:href="@{country.getKey()}" th:text="${country.getValue()}">
        <i th:class="fa fa-square-o"></i>
    </a>
</li>

但这当然会覆盖th:text的图标。将图标添加到文本似乎也不起作用......

我如何在百里香中做到这一点?

1 个答案:

答案 0 :(得分:2)

有很多方法可以解决这个问题。我可能会这样做:

<li th:each="country : ${countryList}">
    <a th:href="@{country.key}" >
        <i th:class="fa fa-square-o"></i><span th:text="${country.value}" />
    </a>
</li>

但是你可能不想要额外的跨度,所以你可以使用th:block。

<li th:each="country : ${countryList}">
    <a th:href="@{country.key}">
        <i th:class="fa fa-square-o"></i><th:block th:text="${country.value}" />
    </a>
</li>

或者只是内联文本本身。

<li th:each="country : ${countryList}">
    <a th:href="@{country.key}" th:inline="text">
        <i th:class="fa fa-square-o"></i>[[${country.value}]]
    </a>
</li>

编辑:另外,如果根据JavaBeans约定命名属性,则应该使用.key而不是.getKey()