Добрый день всем.Я пишу проект, основанный на Thymeleaf, и я застрял с такой проблемой.Ну у меня есть форма, с помощью которой будет осуществляться поиск.
<form method="get" th:action="@{/participants/search}">
...
<button id="searchButton" class="btn btn-default"
th:onclick="|sendSearchRequest(this.form, 0, ${selectedPageSize})|">Search</button>
<form>
У меня есть некоторые входы и выбирает внутри этой формы.Но также мне нужно отправить некоторые pageSize (количество элементов для отображения) и индекс currentPage для работы с объектом Pageable на сервере.Ну, я попытался сделать что-то вроде этого:
function sendSearchRequest(form, currentPage, pageSize) {
form.action = '/participants/search/' + getSearchParams(currentPage,pageSize);
form.submit();
}
И в методе getSearchParams (...) я хотел получить все параметры из формы + добавить информацию о currentPage и pageSize.
function getSearchParams(currentPage, pageSize) {
var paramString = '?page=' + currentPage + '&size=' + pageSize;
Array.from($("#searchForm").find(":input").not(":button"))
.forEach(function (child) {
paramString += "&" + child.name + "=" + child.value;
});
return paramString;
}
Ну, проблема в том, что я не могу передать дополнительные параметры страницы в мой запрос.Только поля из формы могут быть пропущены.В моем запросе я могу только это:
...participants/search/?searchParam=c&applicationType=&status=all
Итак, как вы можете видеть, там нет параметров страницы, но я думал, что это будет что-то вроде этого:
participants/search/?
page=0&size=20&searchParam=c&applicationType=&status=all
Кстати, яТакже пытались:
location.replace('/participants/search/' + getSearchParams(currentPage, pageSize))
Но результат также был неудачным.
Не могли бы вы предложить какое-нибудь решение для меня?