$(function(){ tree(); }); function tree(){ $("#menuTree").jstree({ "core" : { "themes" : { "responsive": false }, // so that create works "check_callback" : true, 'data' : { 'url' : '/menuManage/getList.json', } }, "types" : { "default" : { "icon" : "fa fa-folder icon-state-warning icon-lg" }, "file" : { "icon" : "fa fa-file icon-state-warning icon-lg" } }, "state" : { "key" : "demo2" }, "plugins" : ["dnd", "state", "types" ], /*"contextmenu": { "items": { "create": null, "rename": null, "remove": null, "ccp": null, "add": { "label": "添加", "action" : function (data) { var inst = $.jstree.reference(data.reference), obj = inst.get_node(data.reference); inst.create_node(obj, { type : "file" }, "last", function (new_node) { setTimeout(function () { inst.edit(new_node); },0); }); } }, "delete": { "label": "删除", "action": function (data) { var inst = jQuery.jstree.reference(data.reference), obj = inst.get_node(data.reference); if(confirm("确定要删除此菜单?")){ jQuery("#menuTree").jstree("refresh"); jQuery.get("/accountmanage/deleteMenu?id="+obj.id,function(dat){ if(dat == 1){ alert("删除菜单成功!"); jQuery("#menuTree").jstree("refresh"); }else{ alert("删除菜单失败!"); } }); } } } } }*/ }).on('delete_node.jstree', function (e, data) { alert("123"+data.node.id); $.get('?operation=delete_node', { 'id' : data.node.id }) .fail(function () { data.instance.refresh(); }); }).on('create_node.jstree', function (e, data) { alert("添加?"+data.node.id); alert(data.parent); $.get('?operation=create_node', { 'type' : data.node.type, 'id' : data.node.parent, 'text' : data.node.text }) .done(function (d) { data.instance.set_id(data.node, d.id); }) .fail(function () { data.instance.refresh(); }); }) .on('rename_node.jstree', function (e, data) { $.get('?operation=rename_node', { 'id' : data.node.id, 'text' : data.text }) .done(function (d) { data.instance.set_id(data.node, d.id); }) .fail(function () { data.instance.refresh(); }); }) .on('move_node.jstree', function (e, data) { alert(data.node.id); alert(data.parent); $.get('?operation=move_node', { 'id' : data.node.id, 'parent' : data.parent }) .done(function (d) { //data.instance.load_node(data.parent); data.instance.refresh(); }) .fail(function () { data.instance.refresh(); }); }) .on('copy_node.jstree', function (e, data) { $.get('?operation=copy_node', { 'id' : data.original.id, 'parent' : data.parent }) .done(function (d) { //data.instance.load_node(data.parent); data.instance.refresh(); }) .fail(function () { data.instance.refresh(); }); }) .on('changed.jstree', function (e, data) { if(data && data.selected && data.selected.length) { $.get('?operation=get_content&id=' + data.selected.join(':'), function (d) { if(d && typeof d.type !== 'undefined') { $('#data .content').hide(); switch(d.type) { case 'text': case 'txt': case 'md': case 'htaccess': case 'log': case 'sql': case 'php': case 'js': case 'json': case 'css': case 'html': $('#data .code').show(); $('#code').val(d.content); break; case 'png': case 'jpg': case 'jpeg': case 'bmp': case 'gif': $('#data .image img').one('load', function () { $(this).css({'marginTop':'-' + $(this).height()/2 + 'px','marginLeft':'-' + $(this).width()/2 + 'px'}); }).attr('src',d.content); $('#data .image').show(); break; default: $('#data .default').html(d.content).show(); break; } } }); } else { $('#data .content').hide(); $('#data .default').html('Select a file from the tree.').show(); } }).on('select_node.jstree', function (e, data) { $("#parent").val(data.node.id); }).on("ready.jstree", function (e, data) { data.instance.open_all(); }); }