easyui-treegrid节点选择
2024-10-21 10:16:48
easyui-treegrid本身不能实现选中父节点子节点全选,必须通过另外的方法来实现,这里说下如何通过修改节点样式添加checkbox来实现级联选择效果
首先需要格式化节点的样式
formatter: function (value, row, index) {
return "<input type='checkbox' onclick=show('" + row.ID + "') id='check_" + row.ID + "'/>" + row.EntityName;
}
show方法如下:
function show(checkid) {
var s = '#check_' + checkid;
//alert( $(s).attr("id"));
// alert($(s)[0].checked);
/*选子节点*/
var nodes = $("#EntityTree").treegrid("getChildren", checkid);
for (i = 0; i < nodes.length; i++) {
$(('#check_' + nodes[i].ID))[0].checked = $(s)[0].checked; }
//选上级节点
if (!$(s)[0].checked) {
var parent = $("#EntityTree").treegrid("getParent", checkid);
$(('#check_' + parent.ID))[0].checked = false;
while (parent) {
parent = $("#EntityTree").treegrid("getParent", parent.ID);
$(('#check_' + parent.ID))[0].checked = false;
}
} else {
var parent = $("#EntityTree").treegrid("getParent", checkid);
var flag = true;
var sons = parent.sondata.split(',');
for (j = 0; j < sons.length; j++) {
if (!$(('#check_' + sons[j]))[0].checked) {
flag = false;
break;
}
}
if (flag)
$(('#check_' + parent.ID))[0].checked = true;
while (flag) {
parent = $("#EntityTree").treegrid("getParent", parent.ID);
if (parent) {
sons = parent.sondata.split(',');
for (j = 0; j < sons.length; j++) {
if (!$(('#check_' + sons[j]))[0].checked) {
flag = false;
break;
}
}
}
if (flag)
$(('#check_' + parent.ID))[0].checked = true;
}
}
}
最新文章
- HTML DOM Event 对象
- 每天进步一点点——五分钟理解一致性哈希算法(consistent hashing)
- RabbitMQ的work queue(2)
- ebtables hook
- 通过MD5排除重复文件
- 国内的maven镜像
- c# ICSharpCode.SharpZipLib.Zip实现文件的压缩
- 挂载nfs系统问题之: Root-NFS: Server returned error -13 while mounting
- oracle中查找执行效率低下的SQL
- Indenting source code
- crossdomain 可用
- 微软BI 之SSIS 系列 - 在 SSIS 中将指定目录下的所有文件分类输出到不同文件夹
- openvas开放式漏洞评估系统
- sqlserver 查看当前连接数
- bzoj千题计划193:bzoj2460: [BeiJing2011]元素
- Command /usr/sbin/chown failed with exit code 1?
- hdu-1849-nim模板
- 安装vue后报错 bash: vue: command not found
- 【前端vue开发】vue子调父 $emit (把子组件的数据传给父组件)
- 【明哥报错簿】之 mybatis异常invalid comparison: java.util.Date and java.lang.String