$(function() { var url = ctx + "jcy/ssqx/roleMenuTreeData?xqdid=" + $("#xqdid").val(); var options = { id: "menuTrees", url: url, check: { enable: true,chkboxType: {"Y": "", "N": ""} }, expandLevel: 0, }; $.tree3.init(options); }); $(function() { var url = ctx + "jcy/ssqx/roleMenuTreeData?xqdid=" + $("#xqdid").val(); var options = { id: "menuTrees2", url: url, check: { enable: true,chkboxType: {"Y": "", "N": ""} }, expandLevel: 0, onCheck : zOnClick }; $.tree.init(options); }); 如何从两个tree中获取不同的勾选中的节点
时间: 2024-02-14 10:15:35 浏览: 156
Jeesite框架自定义上下文对象:ctx和${ctxStatic}.docx
您可以通过以下步骤从两个tree中获取不同的勾选中的节点:
1. 获取两个tree的勾选节点数据,可以使用以下代码:
```
var treeObj1 = $.fn.zTree.getZTreeObj("menuTrees");
var treeObj2 = $.fn.zTree.getZTreeObj("menuTrees2");
var nodes1 = treeObj1.getCheckedNodes(true);
var nodes2 = treeObj2.getCheckedNodes(true);
```
2. 遍历两个数组,将节点的id保存到两个不同的数组中:
```
var ids1 = [];
var ids2 = [];
for(var i=0; i<nodes1.length; i++) {
ids1.push(nodes1[i].id);
}
for(var i=0; i<nodes2.length; i++) {
ids2.push(nodes2[i].id);
}
```
3. 使用JavaScript的filter()方法获取不同的节点:
```
var diffNodes = ids1.filter(function(id) {
return !ids2.includes(id);
});
```
这样,diffNodes数组中就保存了在第一个tree中勾选但在第二个tree中未勾选的节点的id。
阅读全文