Нужно передать параметр из ссылки Thymeleaf в URL
у меня есть веб страница, на ней есть несколько ссылок(зависит от количества данных в БД). Мне нужно, нажав на ссылку, передать текст ссылки в параметры URL страницы, на которую я направляюсь.
К примеру, ссылка с текстом Example, я нажимаю на нее и попадаю на страницу localhost.com/home/example.
Можно ли так сделать и если да, то каким способом? Спасибо
Ответы (1 шт):
Если вы хотите использовать Thymeleaf для формирования ссылки, то для этого используйте Link URLs. Для примера, если текст линка приходит в переменной ${titleFromBackEnd} ...
<a href="#" th:href="@{/home/{linkTitle}(linkTitle=${titleFromBackEnd})}" th:text="${titleFromBackEnd}">TitleReplacedByThymeleaf</a>
Если ва хотите формировать линк только при нажатии на сам линк, то вам нужно использовать JavaScript, потому что к этому времени Thymeleaf уже закончил формирование страницы и вы имеете дело с простым HTML.
Ваш JavaScript коде может выглядеть так ...
// когда страничка загрузится
$(function() {
// для всех кликов на все линки
$('a').on("click", function(e) {
// заменяем URL на значение которое в линке плюс имя линка
e.originalEvent.currentTarget.href = $(this).attr('href') + "/" + $(this).text();
});
});