Spring+Thymeleaf分页新增下一页按钮报pageCount表达式解析错误
问题原因
你新增的下一页按钮的th:if条件表达式存在语法错误,两个变量之间漏写了比较运算符,导致Thymeleaf解析SpEL表达式时,识别完page变量后发现后续还有pageCount-1的多余内容,抛出对应的解析错误。
原错误代码行:
<li class="page-item" th:if="${page pageCount-1}">
这里的逻辑是要判断当前页码小于最大页码下标,所以需要补充**小于号<**作为比较运算符。
修正后的完整分页代码
<nav class="mt-3" th:if="${count > perPage}"> <ul class="pagination"> <li class="page-item" th:if="${page > 0}"> <a th:href="@{${#httpServletRequest.requestURI}} + '?page=__${page-1}__'" class="page-link">Previous</a> </li> <li class="page-item" th:each="number: ${#numbers.sequence(0, pageCount-1)}" th:classappend="${page==number} ? 'active' : ''"> <a th:href="@{${#httpServletRequest.requestURI}} + '?page=__${number}__'" class="page-link" th:text="${number+1}"></a> </li> <!-- 修正了th:if的表达式,补充<运算符 --> <li class="page-item" th:if="${page < pageCount-1}"> <a th:href="@{${#httpServletRequest.requestURI}} + '?page=__${page+1}__'" class="page-link">Next</a> </li> </ul> </nav>
修正后即可正常触发下一页的判断逻辑,不会再出现表达式解析错误。
内容的提问来源于stack exchange,提问作者Aabhas Amol
相关产品推荐
相关产品推荐

