ztree的如何只获得完全选中的checkbox
如图,用getCheckedNodes()方法连“八三西里”也返回,如何只返回完全选中的checkbox?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
如图,用getCheckedNodes()方法连“八三西里”也返回,如何只返回完全选中的checkbox?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(11)
请教下,在3.0中怎么直接获取完全被选中的节点呢?3.0中有提供这样的属性或者函数么,貌似treeNode[x].check_True_Full在3.0中已经没有了
找到原因了。犯了低级错误,应该是treeNode[x]写成treeNode了。呵呵!
你的 if条件有问题 (treeNode.nodes || treeNode.nodes.length != 0) 一旦有nodes但是nodes = [] 就不会进行后面的length比较了。
如果确认 有子节点的父节点应该这么判断: (treeNode.nodes && treeNode.nodes.length > 0)
按照“dyhunter”的提示半选问题解决了,现在还有数据重复问题,虽然不影响正常使用。
首先通过treeNode.check_True_Full == true只选择全选的节点,然后想去掉全选并且子节点全选的节点,可是好像不起作用。
引用来自“dyhunter”的答案
关于半选节点,在3.0中能提供简单判断的方法,2.6只好你自己判断了,treeNode.checked=true && treeNode.check_True_Full = false 就是半选节点,你可以在 getCheckedNodes方法得到的结果中自行过滤一下,就可以了;
补充一下,在百度空间上你问的问题和你这个还不完全一样,至少详细程度不一样,看你这个需求,你应该是希望将打钩的、且没有加载子节点的父节点获取下来,那么只需要看看 getCheckedNodes方法中的节点 treeNode.isParent == true && (!treeNode.nodes || treeNode.nodes.length==0) 满足这种的都是父节点且未加载过子节点的。
如果还有问题就继续沟通吧
楼上的是ZTREE开发团队的~
不是这样的,因为用的ajax方法,需要重新读数据库。 如果一次加载可以按照你说的方法。
然后你过滤一下,如果这个节点不是子节点,就直接忽略掉
着急啊!怎么办啊?
由于使用的ajax方法,在选中节点还没展开的情况下需要重新读数据库,可是如果连半选的节点都包含的话会得到不必要的数据。极端情况,只要有一个子节点被选中,那么根节点就会半选,导致查询所有数据。
up!
太感谢了!这两天一直被这个问题困扰,老大逼着赶快完成项目,差点就要放弃了,还好现在不算太晚。