Fancytree:在右键单击上下文菜单中获取节点

时间:2015-01-09 00:31:48

标签: javascript jquery fancytree

我在fancytree上有一个右键单击上下文菜单,我想从'禁用的函数调用中获取一个节点对象。属性。所以基于节点对象中的一些数据,我想有条件地禁用菜单项。但是数据对象只有一个随机的jquery选择器,既没有节点也没有节点数据对象。

        contextMenu: {
              menu: {
                'Cut': { 'name': 'Cut', 'icon': 'cut' },
                'Paste': { 'name': 'Paste', 'icon': 'paste',
                    'disabled' : function(action,data) 
                    { 
                        logMessage("Node: "+ data.node.title + " " + data.node.tooltip);
                        if (data.node.data.isAllowed == true)
                            return false;
                        else
                            return true; 
                    }   
                },
                'sep1': '---------',
                'RefreshTree': { 'name': 'Refresh Tree', 'icon': 'refresh' },
                'sep2': '---------',
                'RefreshNode': { 'name': 'Refresh Node', 'icon': 'refresh' }
              },
              actions: function(node, action, options) {
                  logMessage("Action ["+action+"] "+JSON.stringify(node.data));
              .....

1 个答案:

答案 0 :(得分:0)

行。我得到了答案。

              menu: {
                'Cut': { 'name': 'Cut', 'icon': 'cut' },
                'Paste': { 'name': 'Paste', 'icon': 'paste',
                    'disabled' : function(action,data) 
                    { 
                        var node = $.ui.fancytree.getNode(data.$trigger);
                        logMessage("Node: "+ node.title + " " + node.tooltip);
                        if (node.data.isAllowed == true)
                            return false;
                        else
                            return true; 
                    }   
                },