layui table中点击新增有下拉框的一行
时间: 2023-09-25 18:16:04 浏览: 101
可以使用 layui 的表单组件来实现具有下拉框的一行新增操作。下面是一个简单的示例代码:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Layui Table Demo</title>
<link rel="stylesheet" href="https://cdn.staticfile.org/layui/2.5.6/css/layui.min.css">
</head>
<body>
<table class="layui-table" lay-filter="demo">
<thead>
<tr>
<th>ID</th>
<th>名称</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>测试1</td>
<td><a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a></td>
</tr>
<tr>
<td>2</td>
<td>测试2</td>
<td><a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a></td>
</tr>
</tbody>
</table>
<script src="https://cdn.staticfile.org/layui/2.5.6/layui.min.js"></script>
<script>
layui.use(['table', 'form'], function(){
var table = layui.table;
var form = layui.form;
// 监听表格中的操作按钮
table.on('tool(demo)', function(obj){
var data = obj.data;
if(obj.event === 'del'){
layer.confirm('确定删除该数据?', function(index){
obj.del();
layer.close(index);
});
}
});
// 监听新增按钮
$('.add-btn').click(function(){
var html = '<tr>\
<td></td>\
<td>\
<select name="name" lay-verify="required">\
<option value="">请选择</option>\
<option value="测试3">测试3</option>\
<option value="测试4">测试4</option>\
<option value="测试5">测试5</option>\
</select>\
</td>\
<td>\
<a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="save">保存</a>\
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="cancel">取消</a>\
</td>\
</tr>';
$('tbody').append(html);
form.render();
});
// 监听保存和取消按钮
table.on('tool(demo)', function(obj){
var data = obj.data;
if(obj.event === 'save'){
// TODO: 处理保存事件
} else if (obj.event === 'cancel') {
obj.del();
}
});
});
</script>
</body>
</html>
```
在表格中新增一行时,我们需要动态插入一行 HTML 代码,并使用 `form.render()` 方法重新渲染下拉框组件。同时,我们需要监听保存和取消按钮的点击事件,来处理相应的逻辑。
阅读全文