Выделение ячейки строк таблицы на основе значения тимелина - PullRequest
0 голосов
/ 25 апреля 2018

Мне нужно выделить ячейку (название команды) в строке таблицы в зависимости от значения ячеек.

Самое близкое к этому достижение, которое я получил:

enter image description here

Это нежизнеспособно, поскольку исключает имена всех других сущностей, добавляя вместо них их позицию в столбце «Имя».

Вот мой код:

<table class = "table">
  <tr>
   <td><h5>Name</h5></td>
   <td><h5>Position</h5></td>
   <td><h5>Played</h5></td>
   <td><h5>Won</h5></td>
   <td><h5>Draw</h5></td>
   <td><h5>Lost</h5></td>
   <td><h5>Points For</h5></td>
   <td><h5>Points Against</h5></td>
   <td><h5>Points Difference</h5></td>
   <td><h5>Winning Bonus Points</h5></td>
   <td><h5>Losing Bonus Points</h5></td>
   <td><h5>Points</h5></td>

  </tr>
   <tr th:each="league : ${league}" >

 <td bgcolor="#FF0000" th:unless="${!#strings.startsWith(league?.name, myteam?.teamName) }"><text th:text="${league?.name}" /></td>
 <td> <text th:text="${league?.pos}" /></td>
 <td> <text th:text="${league?.played}" /></td>
 <td> <text th:text="${league?.won}" /></td>
 <td> <text th:text="${league?.drew}" /></td>
 <td> <text th:text="${league?.lost}" /></td>
 <td> <text th:text="${league?.pointsFor}" /></td>
 <td>  <text th:text="${league?.pointsAgainst}" /></td>
  <td> <text th:text="${league?.pointsDifference}" /></td>
  <td>  <text th:text="${league?.Tb}" /></td>
  <td> <text th:text="${league?.lb}" /></td>
  <td> <text th:text="${league?.pts}" /></td>
 </tr>
 </table>

Вы можете видеть, что я использую

th:unless="${!#strings.startsWith(league?.name, myteam?.teamName) }"

, который работает правильно, так как выделяет название соответствующей команды.

K x

1 Ответ

0 голосов
/ 25 апреля 2018

Вы должны использовать th:if / th:unless, только если хотите показать или скрыть элементы.Если вы этого не хотите, вам следует использовать другие атрибуты, такие как th:class, th:classappend или th:style.

. Кроме того, вам не нужны эти дополнительные теги <text />.Вы можете поместить th: текст непосредственно в теги <td />.Вот как это должно выглядеть:

<style type="text/css">
    .my-team {
        background-color: red;
    }
</style>

.
.
.

<tr th:each="league : ${league}" th:classappend="${#strings.startsWith(league?.name, myteam?.teamName)}? 'my-team'">
    <td th:text="${league?.name}" />
    <td th:text="${league?.pos}" />
    <td th:text="${league?.played}" />
    <td th:text="${league?.won}" />
    <td th:text="${league?.drew}" />
    <td th:text="${league?.lost}" />
    <td th:text="${league?.pointsFor}" />
    <td th:text="${league?.pointsAgainst}" />
    <td th:text="${league?.pointsDifference}" />
    <td th:text="${league?.Tb}" />
    <td th:text="${league?.lb}" />
    <td th:text="${league?.pts}" />
</tr>
...