jsTree 对象没有方法 addBack

2024-01-23

这是我的 jsTree 实例化代码。

$("#folder_tree").jstree({
    "themes" : {
        "theme" : "default",
        "dots" : true,
        "icons" : true
    },
    "json_data" : {
        "ajax" : {
            "url" : "/portal/folders",
            "data" : function(n) {
                if ($(n[0]).find("a").attr("id")) {
                    console.log($(n[0]).find("a").attr("id").split('_')[1]);
                    return {
                        "id" : $(n[0]).find("a").attr("id").split('_')[1]
                    };
                }
                return { "id" : "0" };
            }
        }
    },
    "plugins" : [ "themes", "json_data", "ui", "contextmenu", "dnd", "search", "crrm" ]
}).bind("select_node.jstree", function(e,data) {
    console.log(data.rslt.obj.context.id);
});

它在第一次加载时正确加载数据(0 情况),但是当我单击展开任何文件夹时,它会给出错误:

Uncaught TypeError: Object [object Object] has no method 'addBack' 

即使扩展节点的正确 ID 已记录到控制台,并且 ajax 请求已正确发送到服务器。另请注意,我必须使用相当可怕的拼凑来查找元素的 id,因为在尝试访问时,记录的代码除了错误之外什么也不产生(并且我使用与文档相同版本的 jsTree)n.attr("id")。另外,下bind("select_node"...我必须使用未记录的函数来再次查找 id。经过几个小时的故障排除后,我仍然完全困惑,但显然有些东西运行不正常。


确保您使用的是 jQuery 1.8 或更高版本。addBack直到那时才添加。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jsTree 对象没有方法 addBack 的相关文章

随机推荐