layui treegrid 复选框全选
时间: 2023-07-27 12:06:20 浏览: 122
你可以通过以下步骤实现layui treegrid的复选框全选功能:
1. 在treegrid的表头中添加一个全选复选框。
2. 在每行数据中添加一个复选框。
3. 使用jQuery的prop()方法来控制全选复选框和每行数据的复选框的选中状态。
4. 监听全选复选框的change事件,当全选复选框的状态改变时,通过循环遍历每行数据的复选框,来改变每行数据的选中状态。
下面是示例代码:
HTML代码:
```html
<table class="layui-table" id="treegrid"></table>
```
JavaScript代码:
```javascript
layui.use('treeGrid', function(){
var treeGrid = layui.treeGrid;
var data = [
{
id: 1,
name: '节点1',
children: [
{
id: 2,
name: '节点2'
},
{
id: 3,
name: '节点3'
}
]
},
{
id: 4,
name: '节点4',
children: [
{
id: 5,
name: '节点5'
},
{
id: 6,
name: '节点6'
}
]
}
];
var options = {
elem: '#treegrid',
data: data,
treeIdName: 'id',
treeUpIdName: 'parentId',
treeShowName: 'name',
cols: [
{type:'checkbox'},
{field:'name', width:200}
]
};
treeGrid.render(options);
// 全选复选框的change事件
$('#treegrid thead [type="checkbox"]').on('change', function(){
var isChecked = $(this).prop('checked');
// 遍历每行数据的复选框,改变选中状态
$('#treegrid tbody [type="checkbox"]').prop('checked', isChecked);
});
});
```
在上面的代码中,我们在表头中添加了一个复选框,然后监听了它的change事件。在事件处理函数中,我们通过jQuery选择器找到每行数据的复选框,并使用prop()方法改变它们的选中状态。这样,当全选复选框的状态改变时,每行数据的复选框也会跟着改变。
阅读全文