layui表格单元格点击出现下拉框
时间: 2024-03-22 18:15:56 浏览: 144
可以通过在表格中的单元格内添加下拉框来实现该功能,具体步骤如下:
1. 在表格中指定单元格内添加一个 `div` 元素,该元素用于容纳下拉框。
```html
<table class="layui-table">
<thead>
<tr>
<th>姓名</th>
<th>年龄</th>
<th>性别</th>
</tr>
</thead>
<tbody>
<tr>
<td>张三</td>
<td>18</td>
<td>
<div class="dropdown">
<select>
<option value="男">男</option>
<option value="女">女</option>
</select>
</div>
</td>
</tr>
<!-- 其他行省略 -->
</tbody>
</table>
```
2. 使用 `layui.form.render()` 方法对表单进行渲染,以便 `select` 元素能够正确显示。
```html
<script src="https://cdn.staticfile.org/jquery/3.2.1/jquery.min.js"></script>
<script src="https://cdn.staticfile.org/layui/2.5.6/layui.min.js"></script>
<script>
layui.use(['form'], function () {
var form = layui.form;
form.render();
});
</script>
```
3. 使用 jQuery 监听单元格的点击事件,并在点击事件中显示或隐藏下拉框。
```html
<script>
$(function () {
$('.dropdown').click(function (event) {
event.stopPropagation(); // 防止单击事件冒泡到表格行
$('.dropdown').not(this).removeClass('open');
$(this).toggleClass('open');
});
$('html').click(function () {
$('.dropdown').removeClass('open');
});
});
</script>
```
4. 样式表中添加下拉框的样式。
```html
<style>
.dropdown {
position: relative;
display: inline-block;
}
.dropdown select {
width: 100%;
padding: 6px 12px;
border: 1px solid #d2d6de;
border-radius: 2px;
background-color: #fff;
background-image: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
cursor: pointer;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 1;
}
.dropdown.open select {
z-index: 2;
}
</style>
```
阅读全文