easyUI 的 combotree 组合树的下拉树循环显示
响应的json格式是这样的: [ { "children": [{"id":"8a8a8a8a3e93f4b7013e93f4bea40001","text":"demo演示"}], "icoCls":"icon-ok", "id":"8a8a8a8a3e8ef873013e8ef8796c0001", "state":"closed","text":"demo演示" }, { "children":null, "icoCls":"icon-ok", "id":"8a8a8a8a3e8ef873013e8ef879d90002", "state":"closed","text":"我的工作" }, { "children":[{ "id":"8a8a8a8a3e93f4b7013e93f4bf310002", "text":"填写周报"}, {"id":"8a8a8a8a3e93f4b7013e93f4bf500003", "text":"内部通讯录"}, {"id":"8a8a8a8a3e93f4b7013e93f4bf6f0004", "text":"个人信息管理"}], "icoCls":"icon-ok", "id":"8a8a8a8a3e8ef873013e8ef879e90003", "state":"closed","text":"个人事务" }, { "children":[{ "id":"8a8a8a8a3e93f4b7013e93f4bf7f0005", "text":"公共文档"}, {"id":"8a8a8a8a3e93f4b7013e93f4bf9e0006", "text":"我的文档"}], "icoCls":"icon-ok", "id":"8a8a8a8a3e8ef873013e8ef87a080004", "state":"closed","text":"文档管理" }, { "children":null, "icoCls":"icon-ok", "id":"8a8a8a8a3e8ef873013e8ef87a180005", "state":"closed", "text":"组织管理" }, { "children":null, "icoCls":"icon-ok", "id":"8a8a8a8a3e8ef873013e8ef87a280006", "state":"closed", "text":"权限管理" }] 前台的js是这样的: $('#parentModule_add').combotree({ url:root+'/permissions/inittreemodule', valueField:'id', textField:'text' }); 在 “我的工作” 这一个栏目 children 是空的 为什么他又将循环的显示出来 而不是显示的空的啊 什么问题啊~~~~
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
很显然,你的我的工作这个节点没有子节点,所以js会认为是叶子节点,所以状态就不能是closed
很显然,你的我的工作这个节点没有子节点,所以js会认为是叶子节点,所以状态就不能是closed
原因很简单,叶子节点不存在 closed状态,叶子节点设置成 closed状态,会导致解析时出现递归,所有构造树形界面的都要考虑这个问题,不管你你用easyui,dtree,还是extjs
构造数据时,对叶子节点的判断一定要准确,叶子节点的状态必须是 open,也就是 state="open"