使用zTree报错 $.fn.zTree.getZTreeObj("tree") 为 null解决办法
程序员文章站
2024-02-05 12:56:16
...
最后想了下,可能是因为没有找到tree这个元素!!!
但是很奇怪,我的tree这个ul放在了bootstrap的model里面,虽然进入页面是隐藏的,但是初始化的时候一样是隐藏的,就可以成功;
基于上面的猜测,我把代码放到了init()方法后面,然后就成功了..
示例:
按照百度搜索的,因为每个人的情况不一样吧,实现这个初始化默认选中,真是几经波折,搞了2个小时,能实现真是不容易,劳资运气真好
(ps:如果chkDisabled为空,那js调试一下,应该是node为空了)
$(document).ready(function(){
$.getJSON(contextPath + "role/getPermissionsList.htm",function(json){
$.fn.zTree.init($("#tree"), setting, json);
<#if menuInfoList??>
var treeObj = $.fn.zTree.getZTreeObj("tree");
var pName = "";
var pId = "";
<#list menuInfoList as menu>
//把菜单显示出来
<#if menu.menuName != "">
pName += "<button type='button' class='btn btn-info btn-xs'>${menu.menuName}</button>";
</#if>
pId += ${menu.menuId} + ",";
if (treeObj != null) {
<#if menu.menuId != ''>
var node = treeObj.getNodeByParam("id",'${menu.menuId}', null);
//勾选
treeObj.checkNode(node, true, true);
//treeObj.selectNode(node);//选中
treeObj.expandNode(node,true,true,true);
</#if>
}
</#list>
if (pName != "") {
$("#permissionsList").empty();
$("#permissionsList").append(pName);
$("#btn_addPermissions").text("更改权限");
$("#permissionsIds").val(pId);
}else{
$("#permissionsList").empty();
$("#btn_addPermissions").text("添加权限");
$("#permissionsIds").val("");
}
</#if>
});
});
上一篇: zTree复选框案例
下一篇: 乒乓球陪练机器人长这样?其实就是个发球机