分页查询详细的html和js代码
时间: 2023-06-10 08:08:46 浏览: 167
分页查询代码
这提供一个基于MySQL数据库的分页查询的HTML和JavaScript代码示例:
HTML部分:
```html
<!DOCTYPE html>
<html>
<head>
<title>分页查询</title>
<meta charset="utf-8">
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
<script src="./pagination.js"></script>
<link rel="stylesheet" href="./pagination.css">
</head>
<body>
<div id="table-container"></div>
<div id="pagination-container"></div>
<script src="./app.js"></script>
</body>
</html>
```
JavaScript部分:
```javascript
// 分页查询的参数
var limit = 10; // 每页显示的数据条数
var page = 1; // 当前页码
var total = 0; // 总数据条数
var url = "./api/get_data.php"; // 获取数据的 API 接口
// 初始化分页查询
function init() {
// 获取总数据条数
$.get(url, function (data) {
total = data.length;
// 初始化分页控件
$('#pagination-container').pagination({
dataSource: data,
pageSize: limit,
pageNumber: page,
totalNumber: total,
ajax: {
beforeSend: function () {
$('#table-container').html('加载中...');
},
success: function (data) {
// 渲染表格
renderTable(data);
},
error: function () {
$('#table-container').html('加载失败!');
}
}
});
});
}
// 渲染表格
function renderTable(data) {
var html = '<table><thead><tr><th>编号</th><th>姓名</th><th>年龄</th></tr></thead><tbody>';
for (var i = 0; i < data.length; i++) {
html += '<tr><td>' + data[i].id + '</td><td>' + data[i].name + '</td><td>' + data[i].age + '</td></tr>';
}
html += '</tbody></table>';
$('#table-container').html(html);
}
// 初始化操作
$(function () {
init();
});
```
其中,需要引入 jQuery 库、Pagination.js 库和 Pagination.css 样式文件,然后在页面中创建一个容器用于显示表格和一个容器用于显示分页控件。在 JavaScript 部分,需要初始化分页查询参数,然后根据总数据条数和当前页码,使用 Pagination.js 库进行分页控件的初始化。同时,需要通过 AJAX 请求获取数据,然后渲染表格。最后,调用 init() 函数启动分页查询。
另外,这里提供一个基于PHP语言和MySQL数据库的分页查询的API接口代码,供参考:
```php
<?php
// 连接数据库
$mysqli = new mysqli('localhost', 'root', '123456', 'test');
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
// 获取总数据条数
$result = $mysqli->query("SELECT COUNT(*) AS total FROM data");
$row = $result->fetch_assoc();
$total = $row['total'];
// 分页查询数据
$limit = isset($_GET['limit']) ? $_GET['limit'] : 10;
$page = isset($_GET['page']) ? $_GET['page'] : 1;
$offset = ($page - 1) * $limit;
$sql = "SELECT * FROM data LIMIT $offset, $limit";
$result = $mysqli->query($sql);
$data = array();
while ($row = $result->fetch_assoc()) {
$data[] = $row;
}
// 返回数据
header('Content-Type: application/json');
echo json_encode($data);
$mysqli->close();
?>
```
该接口可以接收 limit 和 page 两个参数,用于指定每页数据条数和当前页码。接口会返回一段 JSON 格式的数据,其中包含了按照分页查询条件查询出来的数据。
阅读全文