以下是一个使用PHP、AJAX和Layui实现的简单的删除列表功能的示例代码:
首先,我们需要HTML部分,创建一个用于显示列表的容器和一个删除按钮:
<!DOCTYPE html>
<html>
<head>
<title>删除列表示例</title>
<link rel="stylesheet" href="https://www.layuicdn.com/layui/css/layui.css" />
</head>
<body>
<div class="layui-container">
<table id="item-list" class="layui-table">
<thead>
<tr>
<th>ID</th>
<th>名称</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<!-- 这里将动态插入列表项 -->
</tbody>
</table>
</div>
<script src="https://www.layuicdn.com/layui/layui.js"></script>
<script>
// JavaScript代码将放在这里
</script>
</body>
</html>
然后是PHP代码,假设我们有一个数据库连接和一个获取数据的函数:
<?php
// 连接数据库
$db = new PDO('mysql:host=localhost;dbname=example_db', 'username', 'password');
// 获取列表数据的函数
function getListData() {
global $db;
$stmt = $db->query('SELECT id, name FROM items');
return $stmt->fetchAll(PDO::FETCH_ASSOC);
}
// 调用函数并输出JSON
$listData = getListData();
header('Content-Type: application/json');
echo json_encode($listData);
?>
最后是AJAX和Layui的JavaScript代码:
layui.use(['table', 'jquery'], function(){
var table = layui.table;
var $ = layui.jquery;
// 获取数据并填充表格
$.getJSON("get_list_data.php", function(data){
var rows = '';
$.each(data, function(index, item) {
rows += '<tr>' +
'<td>' + item.id + '</td>' +
'<td>' + item.name + '</td>' +
'<td><button class="layui-btn layui-btn-danger layui-btn-xs delete-btn" data-id="' + item.id + '">删除</button></td>' +
'</tr>';
});
$('#item-list tbody').html(rows);
table.init('table', {
height: 315
});
});
// 删除操作的AJAX请求
$('#item-list').on('click', '.delete-btn', function(){
var id = $(this).data('id');
if(confirm("确定要删除吗?")){
$.post('delete_item.php', { id: id }, function(data){
if(data.status){
layer.msg(data.msg, {icon: 6});
// 删除成功后刷新列表
location.reload();
} else {
layer.msg(data.msg, {icon: 5});
}
}, 'json');
}
});
});
在这段代码中,我们使用了Layui的table
和layer
模块,以及jQuery来处理AJAX请求。当删除按钮被点击时,会弹出确认框询问用户是否确定删除。如果确认,则向delete_item.php
发送一个POST请求,并在成功删除后刷新页面。
delete_item.php
的PHP代码可能如下所示:
<?php
// 连接数据库
$