bootstrap-Treeview实现级联勾选
来源:互联网 发布:教师研修网络平台 编辑:程序博客网 时间:2024/05/03 10:26
核心方法
var nodeCheckedSilent = false;function nodeChecked (event, node){ if(nodeCheckedSilent){ return; } nodeCheckedSilent = true; checkAllParent(node); checkAllSon(node); nodeCheckedSilent = false;}var nodeUncheckedSilent = false;function nodeUnchecked (event, node){ if(nodeUncheckedSilent) return; nodeUncheckedSilent = true; uncheckAllParent(node); uncheckAllSon(node); nodeUncheckedSilent = false;}//选中全部父节点function checkAllParent(node){ $('#searchTree').treeview('checkNode',node.nodeId,{silent:true}); var parentNode = $('#searchTree').treeview('getParent',node.nodeId); if(!("nodeId" in parentNode)){ return; }else{ checkAllParent(parentNode); }}//取消全部父节点function uncheckAllParent(node){ $('#searchTree').treeview('uncheckNode',node.nodeId,{silent:true}); var siblings = $('#searchTree').treeview('getSiblings', node.nodeId); var parentNode = $('#searchTree').treeview('getParent',node.nodeId); if(!("nodeId" in parentNode)) { return; } var isAllUnchecked = true; //是否全部没选中 for(var i in siblings){ if(siblings[i].state.checked){ isAllUnchecked=false; break; } } if(isAllUnchecked){ uncheckAllParent(parentNode); }}//级联选中所有子节点function checkAllSon(node){ $('#searchTree').treeview('checkNode',node.nodeId,{silent:true}); if(node.nodes!=null&&node.nodes.length>0){ for(var i in node.nodes){ checkAllSon(node.nodes[i]); } }}//级联取消所有子节点function uncheckAllSon(node){ $('#searchTree').treeview('uncheckNode',node.nodeId,{silent:true}); if(node.nodes!=null&&node.nodes.length>0){ for(var i in node.nodes){ uncheckAllSon(node.nodes[i]); } }}
6-27 : 经部分网友反馈,图中的 if(!("id" in perentNode)) 需要改成 if(!("nodeId" in perentNode))才能正常运行,我想应该是版本问题,上面代码中已经改正了。如果运行不了,请改回 if(!("id" in perentNode))试一下。(谢谢大家提出)
因为treeview中silent属性指定了无效(我也不知道为什么),所以多加了两个变量来控制$('#searchTree').treeview({ showCheckbox:true, data:treeData, onNodeChecked:nodeChecked , onNodeUnchecked:nodeUnchecked });
效果图:
3 0
- bootstrap-Treeview实现级联勾选
- bootstrap-Treeview实现级联勾选
- TreeView实现级联选择
- bootstrap-treeview
- bootstrap-treeview
- bootstrap-treeview
- bootstrap-treeview
- bootstrap-treeview 实现全选父节点下所有子节点及反选
- TreeView CheckBox级联选中
- TreeView控件的父节点的全选与不选级联子节点并实现拖动子节点
- Bootstrap多级导航栏(级联导航)的实现代码
- bootstrap treeview实现target功能,iframe中打开页面
- Bootstrap多级级联菜单
- bootstrap-treeview 前台使用
- Bootstrap-treeview使用API
- bootstrap-treeview用法总结
- bootstrap-treeview简单使用
- bootstrap-treeview 中文api
- mysql with c++ in ubuntu16.04
- JavaWeb——文件上传和下载
- elk+redis 搭建nginx日志分析平台
- shader学习基础之八透明度渲染队列详解
- 最坚固的爱情,是懂得一个人的心
- bootstrap-Treeview实现级联勾选
- KDB数据库的简单入门
- [linux笔记] CentOS把用户添加到sudoer列表
- 【第十一课】异常---try...catch{...}注意
- 【Explain Plan】查看SQL的执行计划
- TensorFlow基础知识点(二)交互式使用/Interactive Usage
- angularjs默认选中--包括省市联动的默认选中
- Linux系统管理
- CentOS 7 安装 MySQL