jQuery 是一个快速、小巧且功能丰富的 JavaScript 库,它简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。翻页功能通常用于分页显示大量数据,以提高用户体验和页面加载速度。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>jQuery 分页示例</title>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
</head>
<body>
<ul id="data-list">
<!-- 数据项 -->
</ul>
<div id="pagination">
<!-- 分页按钮 -->
</div>
<script>
$(document).ready(function() {
var data = [
{ id: 1, name: 'Item 1' },
{ id: 2, name: 'Item 2' },
// 更多数据...
];
var itemsPerPage = 10;
var totalPages = Math.ceil(data.length / itemsPerPage);
function renderPage(page) {
var start = (page - 1) * itemsPerPage;
var end = start + itemsPerPage;
var itemsToShow = data.slice(start, end);
$('#data-list').empty();
$.each(itemsToShow, function(index, item) {
$('#data-list').append('<li>' + item.name + '</li>');
});
$('#pagination').empty();
for (var i = 1; i <= totalPages; i++) {
$('#pagination').append('<button class="page-btn" data-page="' + i + '">' + i + '</button>');
}
$('.page-btn').click(function() {
renderPage($(this).data('page'));
});
}
renderPage(1);
});
</script>
</body>
</html>
假设后端提供了一个 API /api/data?page=1&limit=10
,返回当前页的数据。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>jQuery 分页示例</title>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
</head>
<body>
<ul id="data-list">
<!-- 数据项 -->
</ul>
<div id="pagination">
<!-- 分页按钮 -->
</div>
<script>
$(document).ready(function() {
var currentPage = 1;
var limit = 10;
function fetchData(page) {
$.ajax({
url: '/api/data',
method: 'GET',
data: { page: page, limit: limit },
success: function(response) {
renderData(response.data);
renderPagination(response.totalPages);
}
});
}
function renderData(data) {
var itemsHtml = '';
$.each(data, function(index, item) {
itemsHtml += '<li>' + item.name + '</li>';
});
$('#data-list').html(itemsHtml);
}
function renderPagination(totalPages) {
var paginationHtml = '';
for (var i = 1; i <= totalPages; i++) {
paginationHtml += '<button class="page-btn" data-page="' + i + '">' + i + '</button>';
}
$('#pagination').html(paginationHtml);
$('.page-btn').click(function() {
currentPage = $(this).data('page');
fetchData(currentPage);
});
}
fetchData(currentPage);
});
</script>
</body>
</html>
通过以上示例代码和常见问题解决方法,你应该能够实现一个基本的 jQuery 分页功能。如果有更具体的问题或需求,欢迎进一步提问。
领取专属 10元无门槛券
手把手带您无忧上云