easyui中combotree只能选子选项,父级不被选中,并且展开
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了easyui中combotree只能选子选项,父级不被选中,并且展开相关的知识,希望对你有一定的参考价值。
参考技术A 我们打开官网的例子可以看到,当我们点击父节点的时候,父节点被选中到结果里面了。然而难免会遇到不选父节点,只是展开的情况。于是开始搜索是否有和我情况相同的做法。幸好,果然有 easyui中combotree只能选子选项,父级不被选中 。于是动手尝试吧,据这篇文章所说,先增加了 onBeforeSelect的回调,如果我的数据结构中, type==0 (父节点的数据),就 return false ;
然而结果只是不赋值到结果集合,我需要不仅仅是不选中,还要展开。
经过各种尝试,我只能另辟蹊径,我发现当多选,并且 onlyLeafCheck:true 的情况下,点击父节点是没有任何反应的,这样就不会选中父节点的值,下面我希望点击父节点他能够展开关闭,经过观察发现可以通过触发旁边的小箭头来实现。
至此我的需求实现了,但是由于用了复选的,多了个问题,就是可以选中多个值,最后我们来整理下结果就好了,永远取最后一个值。
easyui combotree不让父级选中
easyui combotree不让父级选中?
<ul id="combotree"></ul>
$(function () { $("#combotree").combotree({ width: 300, data: [{ "id": 1, "text": "My Documents", "children": [{ "id": 11, "text": "Photos", "state": "closed", "children": [{ "id": 111, "text": "Friend" }, { "id": 112, "text": "Wife" }, { "id": 113, "text": "Company" }] }, { "id": 12, "text": "Program Files", "children": [{ "id": 121, "text": "Intel" }, { "id": 122, "text": "Java", "attributes": { "p1": "Custom Attribute1", "p2": "Custom Attribute2" } }, { "id": 123, "text": "Microsoft Office" }, { "id": 124, "text": "Games", "checked": true }] }, { "id": 13, "text": "index.html" }, { "id": 14, "text": "about.html" }, { "id": 15, "text": "welcome.html" }] }] , method: ‘get‘, ines: true, multiple: true, onBeforeCheck: function (node) { //alert($("#combotree").combotree("tree").tree(‘isLeaf‘, node.target)); if (!$("#combotree").combotree("tree").tree(‘isLeaf‘, node.target)) { return false; } } }) })
关键代码:
onBeforeCheck: function (node) { //alert($("#combotree").combotree("tree").tree(‘isLeaf‘, node.target)); if (!$("#combotree").combotree("tree").tree(‘isLeaf‘, node.target)) { return false; } }
技术交流QQ群:15129679
以上是关于easyui中combotree只能选子选项,父级不被选中,并且展开的主要内容,如果未能解决你的问题,请参考以下文章