/ / Thymeleaf- Po kliknięciu tagu kotwicy, wyświetl obiekt modelu w div - wiosna, boot-wiosna, grasica

Thymeleaf- Po kliknięciu w znacznik zakotwiczenia, wyświetl model obiektu w div - spring, spring-boot, thymeleaf

W moim kontrolerze zwracam obiekt modelu w następujący sposób:

double[] calculateYearMonth=statistics.CalculateActive();
modelAndView.addObject("statistics",calculateYearMonth);

Ta metoda calculActive zwraca tablicę z 4 elementami. Kobieta, mężczyzna, rok, miesiąc, stosunek.

W moim HTML mam div, a pod nim mam dwa linki:

<div class="row centerAlign">
<h1><strong>RESULTS</strong></h1>
</div>

<div class="row centerAlign" id="month">
<div>
<a href="" style="float: right;">Month</a>
<a href="" style="float: left;">Year</a>
</div>
</div>

Kiedy klikam kotwicę, która mówi Miesiąc, jachcesz uzyskać statystyki obiektu [3] - więc trzeci element i wyświetlić go tam, gdzie mówi WYNIK. A kiedy klikam na Rok, chcę uzyskać statystyki, ale czwartego członka. I wyświetl go w wynikach.

Jak to zrobić za pomocą Thyemeleaf? Jak połączyć wybraną kotwicę z wyświetlaną? Dzięki

Odpowiedzi:

0 dla odpowiedzi № 1

Możesz użyć poniższego, aby zapisać dane w obiekcie javascript:

<script th:inline="javascript">
var stats = /*[[${statistics}]]*/{};
</script>

Następnie ten obiekt javascript stats jest dostępny po stronie klienta i można pobrać wymagane dane na podstawie klikniętej kotwicy

<a href="javascript:void(0);" style="float: right;"
class="results" data-index="3">Month</a>
<a href="javascript:void(0);"style="float: right;"
class="results" data-index="4">Year</a>

A w obsłudze zdarzeń możesz napisać:

$(".results").on("click", function(){
var index = $(this).data("index");
var statObj = stats[index];
});