var selected = $('#datagrid').treegrid('getSelected') 如何获取 没有子集的列表
时间: 2023-10-01 14:11:31 浏览: 69
您可以使用 treegrid 的方法 `getParent` 来判断一个节点是否有子节点。具体做法是在遍历 treegrid 的过程中,对于每个节点,使用 `getParent` 方法获取它的父节点,如果父节点存在,则说明该节点有子节点,反之则说明该节点没有子节点。示例代码如下:
```javascript
var nodes = $('#datagrid').treegrid('getData');
var leafNodes = [];
for (var i = 0; i < nodes.length; i++) {
var node = nodes[i];
var parent = $('#datagrid').treegrid('getParent', node.id);
if (!parent) {
leafNodes.push(node);
}
}
```
上述代码中,我们先使用 `getData` 方法获取 treegrid 的全部数据,然后循环遍历每个节点,使用 `getParent` 方法获取它的父节点,如果父节点不存在,则说明该节点是一个叶子节点,将其添加到 `leafNodes` 数组中。最终,`leafNodes` 数组中存储的就是所有没有子节点的节点。
相关问题
var selected = $('#datagrid').treegrid('getSelected'); ,如何只获取父节点
要获取树形表格中的父节点,可以使用 `getParent` 方法。可以按照以下步骤实现:
1. 使用 `getSelected` 方法获取当前选中的节点对象;
2. 使用 `getParent` 方法获取该节点的父节点对象;
3. 判断父节点对象是否存在,如果存在,则表示当前选中的节点是子节点,反之则是父节点。
以下是示例代码:
```javascript
var selected = $('#datagrid').treegrid('getSelected');
var parent = $('#datagrid').treegrid('getParent', selected.id);
if (parent) {
// 当前选中的节点是子节点,parent 就是其父节点
console.log('当前选中的节点是子节点,父节点是:', parent);
} else {
// 当前选中的节点是父节点
console.log('当前选中的节点是父节点');
}
```
var selected = $('#datagrid').treegrid('getSelected') 如何获取同层级的父级点的index
可以使用以下代码获取同层级的父级节点的 index:
```
var parent = $('#datagrid').treegrid('getParent', selected.target);
var index = $('#datagrid').treegrid('getRowIndex', parent);
```
首先,使用 `getParent` 方法获取选中节点的父节点,然后使用 `getRowIndex` 方法获取父节点的索引值。注意,需要将选中节点的 `target` 属性作为参数传递给 `getParent` 方法。
阅读全文