无法使用上下文菜单插件重命名 jsTree 中的节点

Unable to rename a node in jsTree using contextmenu plugin

我正在从 Web 服务(按需)绑定我的 jStree,它工作正常,现在我想使用上下文菜单插件来重命名节点,上下文菜单按预期出现,只有一个项目是重命名, 但点击它时节点无法编辑

我初始化jsTree的代码如下

我已将 "check_callback" 属性 设置为 true,并且还添加了一条允许重命名 TreeNode 的规则,

我已经检查了控制台(Chrome 开发人员选项)并验证了 "action" 方法被命中并且我也得到了当前节点数据,但是在 .edit 方法调用之后什么都没发生,

我相信 .edit 方法是使节点可编辑,编辑完成后我应该得到 rename_node 事件。但这不会发生

如有理解错误请指正

jQuery("#divTree").on("select_node.jstree", function (e, data) {
    jQuery.AreaManagementInfo.CurrentlySelectedArea = data.node;
}).on('rename_node.jstree ', function (obj, val) {
    alert('rename ');
}).jstree({
    'plugins': ['contextmenu'],
    'rules': {
        "renameable": "all",
        "multiple" : false
    },
    "contextmenu": {
        "items": function ($node) {
            return {
                "Rename": {
                    "label": "Rename",
                    "action": function (data) {
                        var inst = $.jstree.reference(data.reference),
                        obj = inst.get_node(data.reference);
                        inst.edit(obj);
                    }
                }
            };
        }
    },
    'core': {
        'data': {
            'type': 'POST',
            'cache': true,
            'contentType': 'application/json',
            'url': Url,
            'check_callback': true,
            'themes': { "stripes": true },
            'data': function (node) {
                var parentId = 0;
                if (node.id != "#") {
                    parentId = node.data.AreaId;
                }
                return JSON.stringify({ basicParam: basicParam, parentId: parentId });
            },
            'success': function (data) {
                if (data.d != null) {
                    if (data.d != "") {
                        var length = data.d.length - 1;
                    }
                }
                return data.d;
            },
            'error': function (request, error) {
                jQuery("#divTree").addClass("hide");
            }

        }
    }
});

check_callback 不应该在 data 内,它应该是 core 的直接子级 - 更正它,一切都会正常工作。事实上 - 更仔细地阅读文档 - 你在 core.data 中放置了很多选项,它们不属于那里,应该直接在 core.