layui分页后编辑功能
时间: 2023-06-29 10:11:04 浏览: 100
如果您想要在layui分页后进行编辑操作,可以采用以下步骤:
1. 给每个编辑按钮添加一个自定义属性(比如data-id)来存储该行数据的id。
2. 当点击编辑按钮时,获取该按钮的自定义属性(即该行数据的id),并通过ajax请求获取该行数据的详细信息。
3. 将获取到的数据填充到表单中,然后显示出来供用户编辑。
4. 用户编辑完成后,点击提交按钮,将表单数据通过ajax请求提交到后台进行保存。
下面是一个示例代码:
HTML部分:
```html
<table class="layui-table" id="table">
<thead>
<tr>
<th>ID</th>
<th>名称</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>测试1</td>
<td><button class="layui-btn layui-btn-normal edit-btn" data-id="1">编辑</button></td>
</tr>
<tr>
<td>2</td>
<td>测试2</td>
<td><button class="layui-btn layui-btn-normal edit-btn" data-id="2">编辑</button></td>
</tr>
...
</tbody>
</table>
```
JavaScript部分:
```javascript
// 监听编辑按钮的点击事件
$('#table').on('click', '.edit-btn', function() {
var id = $(this).data('id');
// 发送ajax请求获取该行数据的详细信息
$.ajax({
url: '/get_data',
type: 'POST',
data: {id: id},
success: function(res) {
// 将数据填充到表单中
$('#form input[name="id"]').val(res.id);
$('#form input[name="name"]').val(res.name);
// 显示编辑弹窗
layer.open({
type: 1,
title: '编辑信息',
content: $('#form'),
area: ['500px', '300px'],
btn: ['保存', '取消'],
yes: function(index, layero) {
// 点击保存按钮时,提交表单数据
$.ajax({
url: '/save_data',
type: 'POST',
data: $('#form').serialize(),
success: function(res) {
layer.msg(res.msg);
// 关闭编辑弹窗,并重新加载当前页数据
layer.close(index);
table.reload('table');
},
error: function() {
layer.msg('保存失败');
}
});
}
});
},
error: function() {
layer.msg('获取数据失败');
}
});
});
```
其中,`#form`表示表单的id,`/get_data`和`/save_data`分别表示获取数据和保存数据的后台接口。在保存数据的后台接口中,需要根据表单数据更新数据库中对应的记录。
阅读全文